Преобразовать квартальный прогноз r в годовой

Я использую library(forecast) создавать квартальные прогнозы на основе квартальных данных. Мои прогнозы сохраняются в forecast объект. Я пытаюсь найти элегантный и простой способ преобразования этих значений в соответствующие годовые значения, взяв среднее значение за все 4 квартала.

Есть ли вариант в forecast пакет, который позволяет это сделать? Или в качестве альтернативы, если есть способ преобразования квартальных значений?

Я пытался преобразовать forecast возражать в timeseries объект и объединить его с исходным временным рядом, который я использовал для создания прогнозов, но это не сработало.

Ниже приведен пример:

library('quantmod')
library('xts')
library('forecast')
library(zoo)
library(tis)
library(astsa)
library(xts)
GDP_SAAR<-getSymbols('A191RL1Q225SBEA',src='FRED', auto.assign=FALSE)
GDP_SAAR   <- ts(GDP_SAAR , start=c(1947, 2), end=c(2017, 3), frequency=4) 
fit <- auto.arima(GDP_SAAR)
x<-forecast(fit,h=7)

1 ответ

Решение

Я не знаю, если он все еще представляет интерес для вас, но вот решение, включающее 12 шагов (кварталов) вперед, чтобы включить как минимум 3 года агрегированных прогнозов:

GDP_SAAR<-getSymbols('A191RL1Q225SBEA',src='FRED', auto.assign=FALSE)
fit <- auto.arima(GDP_SAAR)
x<-forecast(fit,h=12)
DateTime=as.Date(seq(from=tail(index(GDP_SAAR),1),by="quarter",length.out = length(x$mean)+1))
myresult=tibble(Forecasts=x$mean,DateTime=DateTime[-1])%>%mutate(DateTime=year(DateTime))%>%
  group_by(DateTime)%>%summarize(Forecasts=sum(Forecasts,na.rm=T))
> myresult
# A tibble: 3 x 2
  DateTime Forecasts
     <int>     <dbl>
1     2018      10.5
2     2019      10.6
3     2020      10.6

Надеюсь это поможет

Другие вопросы по тегам