0

我正在尝试使用 xlsx 包将数据从 excel(来自多个文件)加载到 R 中,并将数据转换为 xts 对象。数据应作为变量名称获得相关 .xlsx 工作表的名称。数据在第一列中有日期,在第二列中有价格。

到目前为止我的代码:

 path<-"C:/test/"
 files<-list.files(path=path)
 j<-1
 for (i in files){
 name<-strsplit(i,'[.]')[[1]][1]
 assign(name,read.xlsx(file=paste(path,i,collapse=NULL,sep=""),sheetIndex=1,header=TRUE,as.data.frame=TRUE))
 files[j]<-name
 j<-j+1
 }

现在我想将类型更改为 xts 对象。但我不知道如何处理日期。我找到的一个解决方案是将第一列分配为行名,但我不知道如何在不丢失变量名的情况下实现这一点。

我会很感激你的帮助。谢谢

4

1 回答 1

1

假设“名称”是变量,您希望将其转换为 xts(可以是矩阵、data.frame 等),第一列是日期列,例如“99/01/01”,那么转换为:

result=xts(nasa[,-1],order.by=as.POSIXct(strptime(a[,1],'%y/%d/%m')))

要设置 colnames,您可以执行以下操作:

colnames(result)=colnames(name)
于 2012-02-17T19:43:04.287 回答