首先需要导入需要的库,并读取数据:

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()

结果如下图所示:

节假日与对应的总ord_qty的影响

Python数据分析:分析2016年法定节假日对订单量的影响

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

免费AI点我,无需注册和登录