数据框中R的行名转换错误

时间:2013-10-03 02:18:59

标签: r xts

我正在使用R 3.0.2并将csv加载到我想要转换为xts格式的数据框中。

我的数据看起来像这样

head(data)
          V1     V2      V3      V4      V5      V6      V7      V8      V9
1 1999-01-04 1.1812 1.18120 1.18120 1.18120 1.18120 1.18120 1.18120 1.18120
2 1999-01-05 1.1760 1.17860 1.17860 1.17860 1.17860 1.17860 1.17860 1.17860
3 1999-01-06 1.1636 1.17360 1.17360 1.17360 1.17360 1.17360 1.17360 1.17360
4 1999-01-07 1.1672 1.17200 1.17200 1.17200 1.17200 1.17200 1.17200 1.17200
5 1999-01-08 1.1554 1.16868 1.16868 1.16868 1.16868 1.16868 1.16868 1.16555
6 1999-01-11 1.1534 1.16613 1.16613 1.16613 1.16613 1.16613 1.16312 1.15990

根据此post的建议,我尝试将行名称转换为如下

rownames(data) = data[1]

然而我收到以下错误,我无法找到解决方法

Error in `row.names<-.data.frame`(`*tmp*`, value = value) : 
  invalid 'row.names' length

1 个答案:

答案 0 :(得分:2)

基于非常慷慨的评论 这是一个简单的解决方案

rownames(data) <- as.Date(data[,1]) 
dataxts <- xts(data[,-1], order.by=data[,1])