预测门票销售和城市

数据挖掘 Python 预测建模 预言 数据科学模型
2022-03-08 04:34:33

我正在学习数据科学。我有以下火车票数据集:

1. order_date_meduim

order,date,medium
95062,2017-09-11,35
171081,2017-07-05,39
122867,2017-08-18,39
107186,2017-11-23,
171085,2017-09-02,

2. order_ordercityA_ordercityB [some order has only 1 ordercity, I think ordercity means here which city is something like source and destination]

order,ordercityA,ordercityB
81773,4,11
105838,4,
76153,24,18
93058,12,
11623,24,3
3070,24,3

3. order_ticketcount,ticketclass

order,ticketcount,ticketclass
246783,1,pax
1693998,2,pax
1958576,1,other
673681,1,pax
1593899,1,pax
194035,1,pax

我需要预测一周的门票销售以及预订媒介的订单城市。

由于我是新手,有人可以就如何创建一个可以预测 1 周销售额的预测模型给出一个可能的答案吗?另外,我怀疑数据是时间序列数据。

我用 Python 编码。

3个回答

您遇到了时间序列预测问题。对于多个输入变量,它被称为多元时间序列预测。

什么是时间序列预测?

您可以从数据上的 EDA 开始,看看是否可以看到任何趋势或季节性。(您可能需要添加或更新您当前的功能以获得潜在的趋势/季节性)

在 EDA 之后,您可以开始研究以下模型,它们都是时间序列预测问题的首选:

  • 古典的,统计的
    • 用于固定数据的 ARMA
    • 具有趋势的数据的 ARIMA -参考
    • SARIMA 用于具有季节性的数据
    • Holt-Winters 预测 -参考
    • Theta 方法 -参考
    • 傅里叶变换 -参考
  • 机器学习
    • 分位数回归森林(QRF)
    • 支持向量回归(SVR)
    • 递归神经网络 (RNN) (LSTM)

如果您对统计数据不满意,那么我建议您从 LSTM 开始进行预测 -请参阅

通常,建模的第一步是将所有单独的数据集合并为一个数据集。看起来数据可以order作为键加入。

然后,按日期对数据进行排序。

接下来,可视化数据以查看一般趋势和异常值。

先知包可以估计时间序列数据的预测快速入门笔记本在这里

第一步是将所有变量放在同一个数据框中,因此日期行将包含该特定日期的完整信息集。第二步是理解数据并确保数据有意义。在这个阶段,您拥有三个不同的数据集,它们具有不同的行数。完全相同的变量“order”在三个表中具有三个不同的值。那有意义吗?

您也只有 5 个有点随机的数据点。我认为只有 5 个随机数据点,您将没有足够的信息来开发一个比简单平均值更具预测性的模型。火车票销售很可能是非常季节性的(假期、假期、工作周、通勤者等)。为了做一个好的模型,我敢冒险你至少需要几年的数据,这样你就可以观察到每年的季节性模式。

如果你只是在学习数据科学,我可能会建议从另一个比这大得多的数据集开始。在这里,您实际上没有任何工作可做。