【问题标题】:How to create a baseline forecast with sales data that includes (non-promotional and promotional) sales?如何使用包括(非促销和促销)销售的销售数据创建基线预测?
【发布时间】:2020-10-29 18:40:36
【问题描述】:

我有一个带有销售列和另一列(基本/促销)编码 1 或 0 的 df。我想创建一个基线预测。 所以我必须排除/忽略促销销售。 通过这样做,我的时间序列中会有多个空白...... 有没有一种方法可以根据包含促销周的销售数据来预测基准销售额?

这是一个可重现的df:

df <- data.frame(Sales =c(50,75,450,56,65,790,45,59,49,63,750,65,49,57,695,834,76,58,69,71,540,830,43), 
Non-Promo/Promo=c(0,0,0,1,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,1,0))             
df

我希望你能帮助解决这个问题,因为我没有想法。非常感谢!!!

【问题讨论】:

    标签: r forecast baseline promotions


    【解决方案1】:

    假设您有每周数据my_sales,促销活动是promo

    my_sales = ts(c(50,75,450,56,65,790,45,59,49,63,750,65,49,57,695,834,76,58,69,71,
                 540,830,43), frequency = 52, start = c(2020,1))
    
    promo = as.data.frame( c(0,0,0,1,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,1))          
    
    colnames(promo) <- "xreg"
    

    我们拟合了一个 arima 模型,包括以下促销活动:

    library(forecast)
    
    fit <- auto.arima(my_sales, xreg = as.matrix(promo))
    

    要进行预测,您需要了解未来的事件。所以我刚刚在您的示例前 11 周创建了这个 future_promo 示例

    future_promo = as.data.frame(c(0,0,0,1,0,0,1,0,0,0,0))
    
    colnames(future_promo) <- "xreg"
    
    fc <- forecast(fit, xreg = as.matrix(future_promo))
    plot(fc)
    fc
    

    fc$mean 是您提前 11 周的预测点

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多