分组在时间序列预测中

时间:2017-09-08 08:17:52

标签: r time-series forecasting

我有State + Product的不同组合的销售数据。我必须预测每个组合的未来3个月的销售额。目前我正在使用ARIMA预测并在循环中运行模型以获得唯一数量的组合。我想知道其他任何其他简单快捷的方法(类似于我们在回归中使用的组)以及如何实现它。

示例数据:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true" android:drawable="@drawable/blue_rectangle"/>
    <item android:state_checked="false" android:drawable="@drawable/grey_rectangle"/>

    <item android:drawable="@drawable/grey_rectangle"/>
</selector>
等等......

当前代码:

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                

1 个答案:

答案 0 :(得分:1)

您可以随时制作返回列表的函数,并在数据表中使用lapply并结合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"]