使用Nile数据集的tsoutliers包的语法错误

时间:2018-11-15 16:15:52

标签: r syntax time-series syntax-error outliers

我正在尝试使用tsoutliers包定位时间序列中的离群值。

我使用的是经典的尼罗河数据集(您可以在这里找到https://vincentarelbundock.github.io/Rdatasets/datasets.html),但未能成功使tso()函数正常工作。

我的代码是:

nile.outliers <- tso(Nile,types = c("AO","LS","TC"))

但是,出现此语法错误,或者我假设是语法错误:

  

tso0中的错误(x = y,xreg = xreg,cval = cval,delta = delta,n.start = n.start,:     试图从不是S4对象的对象(类“ data.frame”)获取插槽“ y”

如果有人可以帮助我解决这个问题,那就太好了!谢谢!

1 个答案:

答案 0 :(得分:1)

一个小问题:这不是语法错误(该错误来自R),而是tso0包中tsoutliers函数的运行时错误。

但是从您对获取数据的位置的描述来看,当tso需要一个"ts"对象时,您好像在传递数据帧。您不需要下载数据,它内置在R中;因此,您可以删除自己创建的不良代码,并使用内置的恶意代码:

rm(Nile)
nile.outliers <- tso(Nile,types = c("AO","LS","TC"))