gpt4 book ai didi

python - 预测数周内产品的 future 需求

转载 作者:行者123 更新时间:2023-11-30 08:56:17 26 4
gpt4 key购买 nike

我想创建一个模型,在每个步骤中预测每个产品在多周内的 future 需求(预测每个产品明年的每周需求)

我有一些小尺寸(大约 100-200 条记录)的 csv。

这里有关 CSV 列的信息:- 第一列ma​​keId代表产品的id。 第二列areaId表示产品销售地点的内部ID。 第三列日期代表 mm/dd/yyyy 格式的日期。 第四列金额表示给定周内给定区域对给定产品的需求。

示例文件 1-

enter image description here

示例文件 2-

enter image description here

示例文件 3-

enter image description here

我想过使用 Arima 模型,但我对如何将数据转换为每周格式并使用它来预测每个 make id 有点困惑。

任何建议都会有帮助,因为我是时间序列问题的新手

最佳答案

注意:快速浏览一下您的示例,您似乎已经有了每周数据。如果这不是真的,或者您只是希望将数据框设置为能够使用 ARIMA 模型,那么以下答案将会有所帮助。

对您问题的快速回答是:使用 pandas 包将数据读入/操作到 dataframe 对象中,然后使用 .resample( ) 方法,每周频率,例如:.resample('W')

更多详细信息:

对于时间序列分析,大多数应用程序都会受益于将数据索引设置为时间变量。在您的情况下,您可以使用 pandas 读取数据来执行此操作:

将 pandas 导入为 pd
df = pd.read_csv('/path/to/your_data.csv', parse_dates=['date'], index_col='date')

如果您无法读入它,并且需要就地更改数据框,您可以执行以下操作:

df = df.set_index('日期')

这假设date列已正确设置为日期时间对象。

下一步是对数据重新采样,以便获得一个新值来捕获数据中的每周事件。这需要选择一种方法来组合 Amount 字段中的数据,因为您希望显示一个可以组合多天值的值。在这里,我将选择 mean(),以便新值是该周内这些天的数据的平均值。

df['Amount_weekly'] = df['Amount'].resample('W', how='mean')

由于您正在聚合数据,因此该函数会返回一个新系列,因此我在这里将该新系列放入 df 中的新列中,即 df['Amount_weekly']

因此,您将拥有一个时间序列索引数据框,其中有一列显示每周重新采样的数据。这将是在 statsmodels 等包中的 ARIMA 模型中使用的适当格式。

关于python - 预测数周内产品的 future 需求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59353983/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com