Python分析订单数据:统计套餐销量和用户年龄段分布
使用 Python 分析订单数据:统计套餐销量和用户年龄段分布
本文将介绍如何使用 Python 的 pandas 和 matplotlib 库分析订单数据,统计所有套餐的销量及其对应用户年龄段的划分,并使用柱状图进行可视化展示。
假设订单 Excel 表格为 'orders.xlsx',包含以下列:用户id、用户年龄、套餐名称。
import pandas as pd
import matplotlib.pyplot as plt
# 读取Excel表格
df = pd.read_excel('orders.xlsx')
# 统计每个套餐的销量
sales = df['套餐名称'].value_counts()
# 将用户年龄段划分为:18以下、18-35、35以上
df['年龄段'] = pd.cut(df['用户年龄'], bins=[0, 18, 35, df['用户年龄'].max()], labels=['18以下', '18-35', '35以上'])
# 统计每个套餐的不同年龄段的销量
age_sales = df.groupby(['套餐名称', '年龄段']).size().unstack(fill_value=0)
# 绘制柱状图
fig, axs = plt.subplots(nrows=2, ncols=1, figsize=(8, 10))
# 绘制销量柱状图
axs[0].bar(sales.index, sales.values)
axs[0].set_title('套餐销量')
axs[0].set_xlabel('套餐名称')
axs[0].set_ylabel('销量')
# 绘制不同年龄段的销量柱状图
age_sales.plot(kind='bar', stacked=True, ax=axs[1])
axs[1].set_title('不同年龄段的销量')
axs[1].set_xlabel('套餐名称')
axs[1].set_ylabel('销量')
axs[1].legend(title='年龄段')
plt.tight_layout()
plt.show()
运行以上代码,输出的结果会显示两张柱状图:
- 一张是各个套餐的销量
- 一张是不同年龄段的销量
您可以根据需要对图表进行调整和美化。
原文地址: https://www.cveoy.top/t/topic/omee 著作权归作者所有。请勿转载和采集!