2022国赛E题小批量物料生产安排详解
经过第一问得到了最佳物料编码的前六位排名:
是通过聚合指标和熵权法计算得到的,现在我们需要完成第一问的接下来两个目标,分别是建立物料需求的周预测模型和利用历史数据对预测模型进行评价。对于周预测模型,我们需要根据这些物料编码的每一时间序列去分析其对应的时间维度特征,注意我们的时间维度是周,那么应该这样提取数据:
# 1. 数据预处理
def load_and_preprocess_data(file_path, material_code):
df = pd.read_excel(file_path)
df['日期'] = pd.to_datetime(df['日期'])
df.set_index('日期', inplace=True)
# 过滤出指定的物料
filtered_data = df[df['物料编码'] == material_code]
# 按周聚合需求量
weekly_data = filtered_data.resample('W').sum()['需求量']
return weekly_data
按周聚合数据之后,可以拿一个6004010250来看:
现在我们开始分析这列时序数据,先拿出近一年的数据
现在我们可以进行平稳性检验来判断我们该用什么模型,所谓平稳性,其基本思想是:决定过程特性的统计规律不随着时间的变化而变化。关于严宽平稳我之前写自回归模型(AR)已经写的很清楚了。如果通过时间序列图来用肉眼观看的话可能会存在一些主观性。ADF检验(又称单位根检验)是一种比较常用的严格的统计检验方法。
平稳性检验
ADF检验主要是通过判断时间序列中是否含有单位根:如果序列平稳,就不存在单位根;否则,就会存在单位根。
Results of Dickey-Fuller Test:
ADF检验结果:
Test Statistic -7.924662e+00
p-value 3.645835e-12
#Lags Used 0.000000e+00
Number of Observations Used 5.200000e+01
Critical Value (1%) -3.562879e+00
Critical Value (5%) -2.918973e+00
Critical Value (10%) -2.597393e+00
dtype: float64
2024-10-24
浏览46
历年国赛
登录后评论
2
评论
分享