Python数据分析:分析2016年法定节假日对订单量的影响
首先需要导入需要的库,并读取数据:
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('processed_order_train1.csv')
然后需要筛选出2016年的数据,并将order_date转化为日期格式:
df['order_date'] = pd.to_datetime(df['order_date'])
df_2016 = df[df['order_date'].dt.year == 2016]
接下来需要确定2016年的法定节假日:
holidays = ['2016-01-01', '2016-02-07', '2016-02-08', '2016-02-09',
'2016-02-10', '2016-02-11', '2016-02-12', '2016-04-04',
'2016-05-01', '2016-06-09', '2016-06-10', '2016-06-11',
'2016-09-15', '2016-09-16', '2016-09-17', '2016-10-01',
'2016-10-02', '2016-10-03', '2016-10-04', '2016-10-05',
'2016-10-06', '2016-10-07']
然后需要将节假日的日期用节假日代替,并将节假日对应的ord_qty加起来:
df_2016_holiday = df_2016.copy()
for holiday in holidays:
holiday_qty = df_2016[df_2016['order_date'] == holiday]['ord_qty'].sum()
df_2016_holiday.loc[df_2016_holiday['order_date'] == holiday, 'order_date'] = holiday + '(holiday)'
df_2016_holiday.loc[df_2016_holiday['order_date'] == holiday + '(holiday)', 'ord_qty'] = holiday_qty
最后用折线图画出节假日与对应的总ord_qty的影响:
plt.plot(df_2016_holiday['order_date'], df_2016_holiday['ord_qty'])
plt.xticks(rotation=90)
plt.show()
结果如下图所示:

原文地址: https://www.cveoy.top/t/topic/nGWw 著作权归作者所有。请勿转载和采集!