今天我们来分析以下某餐厅8月份订单数据,该餐厅的订单数据前10天、中间10天、后10天分别放在不同的Sheet里。
订单数据字段包括:detail_id、order_id、dishes_id、logicprn_name、parent_class_name、dishes_name、itemis_add、counts、amounts、cost、piece_order_time、emp_id等。
文章目录
0. 加载数据
import pandas as pd
import matplotlib.pyplot as plt
#为了正常显示中文
plt.rcParams['font.sans-serif'] = 'SimHei'
#加载数据
data1 = pd.read_excel('meal_order_detail.xlsx',sheet_name='meal_order_detail1')
data2 = pd.read_excel('meal_order_detail.xlsx',sheet_name='meal_order_detail2')
data3 = pd.read_excel('meal_order_detail.xlsx',sheet_name='meal_order_detail3')
1. 数据处理
#对3个表数据进行行连接
data = pd.concat([data1,data2.data3],axis=0)
#查看连接后的数据
data.head()
#查看列的数据类型和空值情况
data.info()
#删除全为空的列,inpllace=True表明直接对原数据进行修改
data.dropna(axis=1,how='all',inplace=True)
2. 从菜品维度分析
2.1 统计卖出菜品的平均价格
# 方法一:pandas自带函数
round(data['amounts'].mean(),2)
# 方法二:numpy函数处理(数据量大时建议选择)
round(np.mean(data['amounts']),2)
2.2 频数统计,什么菜最受欢迎
对菜名进行频数统计,取最大前10名
#取前10名需要用到切片
dishes_count = data['dishes_name'].value_counts()[