如何在R中使用write.table函数?

时间:2011-12-16 18:47:10

标签: r xts zoo

我正在尝试使用命令write.table(ESH2, "c:/ESH2.txt", sep=",")将对象保存到文本文件。问题是保存的时间序列不包含我下载的日期和时间值。我使用了包 twsInstrument 和命令 getBAT(ESH2)

使用命令load(file = "C:/ESH2.Rdata")

将其加载到R中时的数据
               ES.Bid.Price ES.Ask.Price ES.Trade.Price ES.Mid.Price ES.Volume
1323700200        1237.25        1237.50        1237.50     1237.375      6954
1324057980        1210.25        1210.50        1210.25     1210.375      3792
1324058040        1210.50        1211.00        1211.00     1210.750      3305
.........
.........
.........
1324058100           NA           NA             NA           NA         823

attr(,".indexCLASS")
[1] POSIXct POSIXt 
attr(,".indexTZ")
[1] 
attr(,"from")
[1] 20111211  23:59:59
attr(,"to")
[1] 20111216  23:59:59
attr(,"src")
[1] IB
attr(,"updated")
[1] "2011-12-16 18:54:55 CET"

第一列应显示 Date_Time ,而不是1323700200。

我正在寻找一种简单的方法来每周下载一次数据并合并数据。

是的,我可以阅读教程/书籍来完成这项工作,是的,我会这样做,但问题是我缺乏时间。我想本周开始收集数据,因为交互式代理正在限制数据请求1min data = 5DAYS maximum。我感谢任何帮助和建议。

2 个答案:

答案 0 :(得分:5)

您可能有一个xts或zoo对象,需要使用write.zoo函数。如果我对“ESH2”对象的结构是正确的,那么你称之为“第一列”的数据实际上是rownames,在zoo / xts用语中是“索引”,而数据可以用{来访问{1}}并且是一个矩阵对象。

来自read / write.zoo页面上的示例:

coredata

答案 1 :(得分:1)

如果您的唯一目标是保存对象,以便将来可以再次从R访问它,那么使用

save(ESH2, file = "C:/ESH2.Rdata") # or whatever you want to call the saved file

会为你做到这一点。您可以稍后使用load:

再次返回该对象
load(file = "C:/ESH2.Rdata")

但正如评论中所提到的,如果您需要帮助使用write.table或write.csv解决方案,那么您需要提供更多信息。