簡體   English   中英

R 中按組的時間序列預測

[英]Time Series Forecasting by Group in R

我有 2008-2018 年按美國 state 分組的時間序列數據,我需要預測 2019-2020 年的值。 我在亞利桑那州測試了預測並寫了如下內容:

az <- subset(full_df, full_df$state == "AZ")

az$year <- lubridate::ymd(az$year, truncated = 2L)
az <- xts(az$variable, az$year)

forecast <- forecast(az, level = c(95), h = 2)

這有效,產生兩點估計及其 CI。

我唯一的問題是在整個原始 dataframe 上循環並生成每個 state 的估計值。 有誰知道我會如何 go 關於這個?

您可以創建一個 function,拆分並應用。 我沒有對此進行測試,因為您沒有包含任何數據,

my_forecast_fun(df){
  df$year <- lubridate::ymd(df$year, truncated = 2L)
  df <- xts(df$variable, df$year)
  my_forecast <- forecast(df, level = c(95), h = 2) # avoid naming objects the same as functions (i.e. forecast)
  return(my_forecast)
}

my_list <- split(full_df, full_df$state)

res <- lapply(my_list, my_forecast_fun)

res是一個列表,其中包含每個 state 的預測

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM