auto.arima的频率,单位为xts vs ts

时间:2016-11-28 01:11:23

标签: r xts

问:在给定一组日期的情况下,在<{1}}对象中设置频率的正确方法是什么?理想情况下,调用此xts对象的auto.arima()将产生与在类似的xts对象上调用时相同的结果。

详细信息:根据我是否通过tsauto.arima()对象,我很惊讶地发现ts拟合的结果不同。我发现差异与xts有关(在frequency的情况下,尽管我在构造中将其设置为12,但仍被重置为1)。下面,设置xts并估算预期模型相对简单。但在我最初尝试使用sim_ts_12xtssim_xts)时,我估计错误的模型。我最终使用sim_xts_notxtssim_xts_12)估算了正确的模型,但这两种方法在某种程度上似乎都是错误的。我希望与sim_ts2xts合作比xts更简单。但这似乎并非如此。我错过了什么吗?

ts

更新,而不是重复:可能重复的问题/答案并未解决sim <- scan(file="./sim.dat") sim_ts_12 <- ts(sim, start=c(2016,1), frequency=12) sim_ts2xts_12 <- as.xts(sim_ts_12) sim_xts <- xts(x=sim, order.by=seq.Date(from=as.Date("2016-01-01"), by="month", length.out = length(sim))) sim_xts_12_not <- xts(x=sim, order.by=seq.Date(from=as.Date("2016-01-01"), by="month", length.out = length(sim)), frequency=12) sim_xts_12 <- sim_xts attr(sim_xts_12, 'frequency') <- 12 auto.arima(sim_ts_12) # ARIMA(0,1,1)(0,1,0)[12] auto.arima(sim_ts2xts_12) # ARIMA(0,1,1)(0,1,0)[12] auto.arima(sim_xts) # ARIMA(0,1,1) with drift auto.arima(sim_xts_12_not) # ARIMA(0,1,1) with drift auto.arima(sim_xts_12) # ARIMA(0,1,1)(0,1,0)[12] txt <- "0.04767597 0.07217235 0.03954613 0.03698637 0.04283896 0.03534811 0.04198519 0.04129214 0.04576022 0.03966146 0.03656881 0.04396736 0.04459328 0.07062732 0.03477407 0.0340033 0.039136 0.0347761 0.03819997 0.03634627 0.03966617 0.03455635 0.03009606 0.03927688 0.03959629 0.06554147 0.02908742 0.02619443 0.03179742 0.02468108 0.02612955 0.02300656 0.02988827 0.01878513 0.01399028 0.02601922 0.0250159 0.05610426 0.01537538 0.01231939 0.01330564 0.008744173 0.01296571 0.005741129 0.01674992 0.003210812 -0.007936987 0.01018758" sim.dat <- scan(text=txt, what=numeric() ) 中处理频率的最佳做法。问题不是要求它,答案也没有解决它。答案处理xts

0 个答案:

没有答案