【问题标题】:Getting Error when applying time-series analysis function to an xts object将时间序列分析函数应用于 xts 对象时出错
【发布时间】:2023-03-17 11:40:01
【问题描述】:

我想对存储为 xts 对象的每日数据执行时间序列分析。我认为并非所有适用于 ts 对象的函数和模型也适用于 xts 对象。我首先选择创建 xts 对象,因为我的数据中也有时间(例如,这是 DateTime 列“2012-08-25 06:00:00”的一个实例)所以我以这种方式创建了我的对象:

myXtsObj = as.xts(mydata$var1, order.by = mydata$DatetimeVar)

当我想使用某些功能时,我一直收到同样的错误,例如:

ma(myXtsObj, order = 4, centre = T) 
ets(myXtsObj)

ets 和 ma 函数都不起作用,基本上我用它来检测数据中的趋势和季节性。

我的问题:

1) 我不确定“ma”函数中每日数据的“order”参数的正确值是多少。有什么帮助吗?

2) 当我使用这两个函数以及尝试使用 as.ts 将 xts 对象转换为 ts 对象时出现的错误是:

if (frequency > 1 && abs(frequency - round(frequency))

什么可能导致此错误?

【问题讨论】:

    标签: r time-series xts


    【解决方案1】:

    正如帮助文件所述,ma()ets() 都需要 ts 对象作为第一个参数,而不是 xts 对象。

    如果您想估计一个趋势,在ma() 中设置order=7 将删除星期几的季节性。更好的方法是使用stl()forecast::mstl()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-25
      • 1970-01-01
      • 2021-07-14
      • 2016-08-11
      • 2016-04-18
      • 1970-01-01
      • 1970-01-01
      • 2014-07-19
      相关资源
      最近更新 更多