【问题标题】:How to display time series forecasted values horizontally?如何水平显示时间序列预测值?
【发布时间】:2018-12-24 00:43:24
【问题描述】:

我正在预测每月的时间序列数据,并希望水平显示预测值。目前使用预测包,我通过预测间隔很好地获得了这些值,但在多行中。

目前我的输出如下图

             Point Forecast    Lo 80    Hi 80    Lo 95    Hi 95
Sep 2018           6300        5287.423 7312.577 4751.396 7848.604
Oct 2018           6300        4867.999 7732.001 4109.944 8490.056
Nov 2018           6300        4546.164 8053.836 3617.740 8982.260
Dec 2018           6300        4274.845 8325.155 3202.793 9397.207
Jan 2019           6300        4035.808 8564.192 2837.217 9762.783

但我想要这样的东西

Sep-18  Oct-18  Nov-18  Dec-18  Jan-19
6300    6300    6300    6300    6300

我只对点预测感兴趣。这是为了使可视化更容易,因为我有几个系列要预测。然后我将 rbind 每个系列的预测值。

这是我的代码:

library(forecast)

data =  ts(c(3000,3500,2700,4200,5000,5300,5800,6300),start = c(2018,1),frequency=12)           
model <- auto.arima(data)
f <- forecast(model,5)
f

谢谢

【问题讨论】:

    标签: r time-series forecasting forecast


    【解决方案1】:

    "forecast"函数的输出是"ts"类,所以你应该把它转换成"dataframe"然后转置它的一个子集:

    t(as.data.frame(f)[1])
    

    【讨论】:

    • 这将给出此错误Error in f[, c(1, 2)] : incorrect number of dimensions。它是ts 类。
    • 是的。干得好!
    • @see-king_of_knowledge 欢迎您,不要记得投票并接受答案,tnx。
    • 我认为我不能接受这个答案,因为这不是我的问题
    • @joy_1379 不要记得点赞并接受答案,tnx。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    • 2021-06-12
    • 1970-01-01
    • 2019-02-27
    • 1970-01-01
    • 1970-01-01
    • 2014-11-23
    相关资源
    最近更新 更多