2017-09-08 8 views
0

State + Productの異なる組み合わせの売上データがあります。私はそれぞれの組み合わせについて、今後3ヶ月間の売上を予測しなければならない。現時点では、ARIMAを使用して、モデルをループ内で予測して実行し、固有の組み合わせ数を求めています。私はそこで、これを行うための他の簡単で素早い方法(私たちが回帰で使うグループのようなもの)とそれを実装する方法を知りたかったのです。グループ別の時系列予測R

サンプルデータ:

State  Product   Month  Sales 
    X   AA    Jan   100 
    X   AA    Feb   120 
    .    .    .   . 
    X   AA    Dec   80 
    X   AB    Jan   400 
    .    .    .   . 
    .    .    .   . 
    X   AB    Dec   300 
    Y   AA    Jan   50 
    Y   AB    Jan   60     

ように...

現在のコード:

uniqueStates = unique(data$State) 
    uniqueProducts = unique(data$Product) 
    for i in 1:length(uniqueStates) { 
     for j in 1:length(uniqueProducts) { 
       data_subset = subset(data, data$State == uniqueStates[i] & data$Product == uniqueProducts[j]) 
       model <- auto.arima(data_subset$Sales) 
       result = forecast(model,3) 
       # Store the result in a Data Frame 
     } 
    } 

答えて

1

あなたはいつもあなたがリストを返す関数、使用したいものを作ることができますby

library(forecast) 
library(datatable) 
library(dplyr) 
data <-data %>% as.data.table() 


modelaki <- function(x) {model <- auto.arima(x) 
        result = forecast(model,3) 
     return(list(model, result))} 


results <- data[, lapply(.SD, modelaki), by = State, .SDcols = "Sales"] 
関連する問題