帮我写一份Python可视化大作业,关于京东的行李箱销售数据,用pycharm进行
时间: 2024-03-24 22:35:56 浏览: 101
好的,以下是一份Python可视化大作业关于京东行李箱销售数据的代码,可以在Pycharm中运行:
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
# 读取数据集
df = pd.read_csv('luggage_sales.csv')
# 查看数据前几行
print(df.head())
# 数据预处理
# 去除无用列
df = df.drop(['Unnamed: 0'], axis=1)
# 处理缺失值
df = df.dropna()
# 特征工程
# 提取年份和月份
df['year'] = pd.DatetimeIndex(df['date']).year
df['month'] = pd.DatetimeIndex(df['date']).month
# 统计每月销售量
monthly_sales = df.groupby(['year', 'month'])['sales'].sum().reset_index()
# 数据可视化
# 设置图表风格
sns.set_style('whitegrid')
# 绘制折线图
plt.figure(figsize=(12, 6))
sns.lineplot(x='month', y='sales', data=monthly_sales, hue='year')
plt.title('Monthly Sales of Luggage')
plt.xlabel('Month')
plt.ylabel('Sales')
plt.show()
# 绘制箱线图
plt.figure(figsize=(12, 6))
sns.boxplot(x='year', y='sales', data=df)
plt.title('Sales Distribution of Luggage')
plt.xlabel('Year')
plt.ylabel('Sales')
plt.show()
# 绘制热力图
yearly_sales = df.groupby(['brand', 'year'])['sales'].sum().reset_index()
yearly_sales_pivot = yearly_sales.pivot(index='brand', columns='year', values='sales')
plt.figure(figsize=(12, 6))
sns.heatmap(yearly_sales_pivot, cmap='YlGnBu', annot=True, fmt='.0f')
plt.title('Yearly Sales of Luggage by Brand')
plt.xlabel('Year')
plt.ylabel('Brand')
plt.show()
```
以上代码可以完成以下任务:
1. 读取行李箱销售数据集,进行数据预处理和特征工程。
2. 绘制每月销售量的折线图,显示每年的销售情况。
3. 绘制销售分布的箱线图,比较每年销售量的差异。
4. 绘制每个品牌每年销售额的热力图,显示品牌和年份之间的关系。
注意:在运行代码之前,需要将数据集保存在当前工作目录下,并将文件名修改为“luggage_sales.csv”。
阅读全文