将csv文件中的timeSeries导入到具有正确日期的R中

时间:2011-02-21 10:18:46

标签: r time-series

我已经在互联网上查找了我的问题的答案并且失败了。

我使用的是Rmetrics包。

我尝试通过dataset.csv函数阅读我自己的readSeries但遗憾的是我输入的日期未正确导入,现在每一行都有当前日期。

我尝试使用他们的示例数据集,将它们导出到csv并重新导入它会产生同样的问题。

您可以使用以下代码对其进行测试:

data <- head(SWX.RET[,1:3])
write.csv(data, file="myData.csv")
data2 <- readSeries(file="myData.csv",header=T,sep=",")

如果您现在查看data2时间序列,您会发现行日期是当前日期。

我很困惑为什么会这样做以及如何解决它。

非常感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

这可以通过row.names=FALSE函数的额外选项write.csv()来实现;请参阅其帮助页面了解详细信息这是一个有效的例子:

R> fakeData <- data.frame(date=Sys.Date()+seq(-7,-1), value=runif(7))
R> fakeData
        date    value
1 2011-02-14 0.261088
2 2011-02-15 0.514413
3 2011-02-16 0.675607
4 2011-02-17 0.982817
5 2011-02-18 0.759544
6 2011-02-19 0.566488
7 2011-02-20 0.849690
R> write.csv(fakeData, "/tmp/fakeDate.csv", row.names=FALSE, quote=FALSE)
R> readSeries("/tmp/fakeDate.csv", header=TRUE, sep=",")
GMT
              value
2011-02-14 0.261088
2011-02-15 0.514413
2011-02-16 0.675607
2011-02-17 0.982817
2011-02-18 0.759544
2011-02-19 0.566488
2011-02-20 0.849690
R>