我在上一个问题(Automatic vlookup and multiply coefficients with R)中对Joshua Ulrich的回答应用了不同的数据集,并且它给出了一个我无法解决的错误。
新数据集:巴西的Bovespa指数
(SP< -read.csv( “http://www.bolsapt.com/download/historico/%5EBVSP/de-01-01-2000-a-04-02-2013/”)
spLag <- lag(sp)
Error in hasTsp(x) : invalid time series parameters specified
祝你好运
答案 0 :(得分:6)
@JoshuaUlrich使用getSymbols
默认返回xts
个对象。 xts
个对象专门用于处理时间序列数据。您正在尝试将相同的代码应用于data.frame
,这是一个更通用的数据类。要创建xts
对象,您必须提供基于时间的索引。
sp.xts <- xts(sp[, 5:9], order.by=as.Date(sp[, 3], format="%Y%m%d"))
spLag <- lag(sp.xts)
以上将YYYYMMDD列转换为正确的Date
并将其用作索引。请注意,xts
对象的所有列必须属于同一个类,因此我只包含数字列。