Python 预测每周计数
我的每周销售数据如下:Python 预测每周计数,python,machine-learning,forecasting,Python,Machine Learning,Forecasting,我的每周销售数据如下: date Total_sales 2016-01-04 10 2016-01-05 72 2016-01-06 64 2016-01-07 94 2016-01-08 94 2016-01-09 158 2016-01-10 65 2016-01-11 70 2016-01-12 115 2016-01-13 126 2016-01-14 140 2016-01-15
date Total_sales
2016-01-04 10
2016-01-05 72
2016-01-06 64
2016-01-07 94
2016-01-08 94
2016-01-09 158
2016-01-10 65
2016-01-11 70
2016-01-12 115
2016-01-13 126
2016-01-14 140
2016-01-15 179
2016-01-16 181
2016-01-17 123
2016-01-18 96
2016-01-19 111
2016-01-20 199
2016-01-21 184
2016-01-22 215
2016-01-23 257
2016-01-24 151
2016-01-25 114
2016-01-26 209
2016-01-27 190
2016-01-28 208
2016-01-29 218
2016-01-30 243
2016-01-31 150
2016-02-01 147
2016-02-02 173
2016-02-03 168
2016-02-04 169
2016-02-05 142
2016-02-06 188
2016-02-07 130
2016-02-08 82
2016-02-09 102
2016-02-10 89
2016-02-11 93
2016-02-12 97
2016-02-13 75
2016-02-14 39
2016-02-15 54
2016-02-16 39
2016-02-17 44
2016-02-18 44
2016-02-19 38
2016-02-20 53
2016-02-21 31
2016-02-22 24
2016-02-23 27
2016-02-24 17
2016-02-25 10
2016-02-26 8
2016-02-27 12
2016-02-28 5
2016-02-29 1
原始数据具有具有日期变量和事务的其他属性的事务的每一行。我已经按日期对它进行了分组,并在这里计算了日期
现在,如果我再次按周分组,如下所示:
df.groupby([df.transaction_date.dt.week])['transaction_date'].count()
数据如下所示:
1.0 557
2.0 934
3.0 1213
4.0 1332
5.0 1117
6.0 577
7.0 303
8.0 103
9.0 1
其中1.0 etc是周编号
现在我想根据这些数据预测每周销售量
任何建议,如果我应该只使用一个基本的线性回归对这个数据(问题是它只是一个单变量数据(每周计数),所以我不确定是否有一个线性回归可以尝试在这里,因为这里没有IV)
那么,有没有关于如何在这些小数据点上进行预测的建议?由于您的时变数据很小,您可能应该选择一种统计模型,例如,在您的案例中,时间序列模型。ARIMA或自回归综合移动平均(ARIMA)模型用于寻找时间序列模型与时间序列过去值的最佳拟合。预测将分为三个步骤,如下所示:
[statmodels][1]
包,您可以利用它。我建议您使用两种参考资料,它们可以为您提供python实现的完整解释
除此之外,您可能还想尝试随机森林回归和XGBOOST,但我的建议是第一次尝试
ARIMA
,因为您的数据与时间有关 如果你画一张图,你会看到你正处于一个波动的末端,因此,ARIMA可能不是解决方案(因为它只能拟合多项式模型)
为了消除波动,您可以首先使用累积数据,然后拟合逻辑曲线(不要与混沌逻辑图或逻辑逻辑逻辑图混淆)
然后,您会发现您的销售填补了6745套的市场利基,其中6137套已经售出。目前仍有608台待出售。他们将遵循递减模式:第9周60,第10周27,第11周12,第12周5,。。。剩下的将更多地取决于是否继续销售产品的战略决策,而不是填补市场利基
由于您的数据依赖于时间,您可能应该尝试ARIMA之类的时间序列模型,但迄今为止您是否尝试过任何方法?我正在考虑尝试LSTM,因为我目前知道可以在序列数据上使用LSTM。我不太熟悉ARIMA,尤其是如何在Pythonb中实现它,但我的数据非常小(每周的数据点只有9个),我想LSTM对此不起作用。ARIMA只需要9点就可以工作吗?如果你有这么小的数据集,我认为使用LSTM不是一个好的选择。是的。Python中快速ARIMA iImpleTention的任何资源?谢谢