我想我会在这里发帖,因为我花了好几个小时试图解决这个问题。因此,我正在使用具有日期和结算返回价格的csv文件。但是,我无法将文件设置为" timeBased。" (timeBased
函数来自包xts
)。例如:
timeBased(dfx)
[1] FALSE
这就是我所拥有的:
dfx = xts(aus$AUS, order.by=as.Date(aus$DATE))
并且这里是文件的前10行:
DATE AUS
1 12/1/1988 -0.0031599720
2 12/2/1988 -0.0015724670
3 12/5/1988 -0.0000897619
4 12/6/1988 -0.0022670620
5 12/7/1988 0.0052895550
6 12/8/1988 -0.0048259860
7 12/9/1988 0.0106990910
8 12/12/1988 0.0033538810
9 12/13/1988 0.0118568700
10 12/14/1988 -0.0050105200
如果有人可以提供帮助,我将不胜感激!我尝试使用动物园和其他编辑的多个代码,但没有。谢谢!! [在此处输入图片说明] [1]
答案 0 :(得分:1)
正如约书亚·乌尔里希所指出的,使用带有xts对象的timeBased
函数应该返回FALSE
。除此之外,您的代码可能还有其他问题。假设您的示例显示aus
的内容,则aus$DATE
实际上是因子或字符数据,而不是Date对象。要正确转换为xts对象,您必须指定aus$DATE
数据的日期格式。要转换然后测试dfx
是否为xts对象,可以使用以下代码:
dfx = xts(aus$AUS, order.by=as.Date(aus$DATE, "%m/%d/%Y"))
dfx
[,1]
1988-12-01 -0.0031599720
1988-12-02 -0.0015724670
1988-12-05 -0.0000897619
1988-12-06 -0.0022670620
timeBased(dfx)
[1] FALSE
is.xts(dfx)
[1] TRUE