【问题标题】:Extracting value from forecasting object从预测对象中提取值
【发布时间】:2020-03-23 02:03:47
【问题描述】:

我正在结合 fpp2 包中的数据集和预测包中的预测功能进行森林化。此预测的输出是带有 SNAIVE_MODELS_ALL 的对象列表。此对象包含来自消费、收入、生产和储蓄的预测。

library(dplyr)
library(forecast)
library(fpp2)

MY_DATA<-uschange[,1:4]

# 1.FORECAST FUNCTION          
FORECASTING_FUNCTION_SNAIVE <- function(Z, hrz = 5) {
  timeseries <- msts(Z, start = 1970, seasonal.periods = 4)
  forecast <- snaive(timeseries, biasadj = TRUE, h =  hrz)
}     
FORECASTING_LIST_SNAIVE <- lapply(X = MY_DATA, FORECASTING_FUNCTION_SNAIVE)

# 2.FORECASTING
 SNAIVE_MODELS_ALL<-lapply(FORECASTING_LIST_SNAIVE,  forecast)  

所以我的意图是仅从 SNAIVE_MODELS_ALL 列表的所有预测系列(消费、收入、生产和储蓄)中提取平均预测值。实际上这个值的路径是:

SNAIVE_MODELS_ALL$Consumption$mean
SNAIVE_MODELS_ALL$Income$mean
SNAIVE_MODELS_ALL$Production$mean
SNAIVE_MODELS_ALL$Savings$mean

我尝试使用这段代码,但我不能只提取平均值

test<-lapply(SNAIVE_MODELS_ALL,ts.union)

那么任何人都可以帮助我如何解决这个问题并只提取平均值吗?

【问题讨论】:

    标签: r lapply forecast


    【解决方案1】:

    你快到了。如果你在 SNAIVE_MODELS_ALL 上执行 lapply,它会遍历列表的每个顶级元素,例如 SNAIVE_MODELS_ALL[["Consumption"]]。所以剩下的就是找出每个元素的平均值。

    lapply(SNAIVE_MODELS_ALL,function(i)i$mean)
    # or lapply(SNAIVE_MODELS_ALL,"[[","mean")
    
    $Consumption
              Qtr1      Qtr2      Qtr3      Qtr4
    2016                               0.5616798
    2017 0.4046822 1.0477074 0.7295978 0.5616798
    
    $Income
              Qtr1      Qtr2      Qtr3      Qtr4
    2016                               0.7400626
    2017 0.5190254 0.7237208 0.6447008 0.7400626
    
    $Production
               Qtr1       Qtr2       Qtr3       Qtr4
    2016                                  -0.8455464
    2017 -0.4179305 -0.2033188  0.4749184 -0.8455464
    
    $Savings
               Qtr1       Qtr2       Qtr3       Qtr4
    2016                                   3.4827860
    2017  2.2365341 -2.7215011 -0.5728579  3.4827860
    

    【讨论】:

      猜你喜欢
      • 2013-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-21
      • 1970-01-01
      • 2021-02-28
      • 2021-02-26
      相关资源
      最近更新 更多