【Python】python零售公司商品销售情况数据分析(源码+数据)【独一无二】

简介: 【Python】python零售公司商品销售情况数据分析(源码+数据)【独一无二】


👉博__主👈:米码收割机

👉技__能👈:C++/Python语言

👉公众号👈:测试开发自动化【获取源码+商业合作】

👉荣__誉👈:阿里云博客专家博主、51CTO技术博主

👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。



一、功能描述

采用python用于对零售公司商品销售情况进行数据分析:

  1. 绘制商品名称和商品金额的雷达图,展示销售额排名前20的商品情况。
  2. 分析下单时间趋势并绘制折线图,展示每日销售数量的变化趋势。
  3. 分析商品金额和数量之间的关系并绘制散点图,以不同商品分类进行区分。
  4. 组合图:将饼状图和柱状图放置在同一图中,展示各品类销售比例和订单状态分布。

此脚本使用了Pandas进行数据处理,Matplotlib和Seaborn进行数据可视化。

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇

部分数据如下:

二、设计思路

  1. 数据读取和准备
  • 使用Pandas库的read_excel()函数读取原始数据文件,确保文件路径正确。
  • 数据文件包含订单记录,需要获取的信息包括商品分类、订单状态、商品名称、商品金额、下单时间和数量等。
  • 将读取的数据存储在DataFrame对象中,方便后续的数据分析和可视化。
  1. 各品类销售情况分析及饼状图绘制
  • 使用groupby()函数按照商品分类对数据进行分组,并计算每个品类的销售数量总和。
  • 将计算结果用于绘制饼状图,显示各品类销售比例。
  • 使用Matplotlib库的pie()函数绘制饼状图,并设置相应的参数如标签、百分比显示等。
  1. 订单状态分析及柱状图绘制
  • 使用value_counts()函数统计订单状态的数量分布。
  • 利用Seaborn库的barplot()函数绘制柱状图,展示不同订单状态的数量分布情况。
  • 在柱状图上添加合适的标签,确保图表清晰易读。

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇

  1. 商品名称和商品金额的雷达图绘制
  • 首先,按商品名称对数据进行分组,并计算每个商品的销售金额总和。
  • 选取销售额排名前20的商品进行雷达图绘制。
  • 利用Matplotlib库的subplot()函数创建子图,绘制雷达图。
  • 设置雷达图的角度、标签、标题等参数,确保图表完整显示并清晰表达销售情况。
  1. 下单时间趋势分析及折线图绘制
  • 将下单时间转换为日期时间类型,并设置为数据框索引,便于按时间进行数据重采样。
  • 使用resample()函数按照日期进行重采样,并计算每日销售数量的总和。
  • 利用Matplotlib库绘制折线图,展示销售数量随时间的变化趋势。
  • 设置合适的标签、标题、轴标签等参数,使图表清晰易懂。
  1. 商品金额和数量关系分析及散点图绘制
  • 利用Seaborn库的scatterplot()函数绘制散点图,以商品金额为横坐标、数量为纵坐标,并按商品分类进行着色。
  • 设置散点图的标题、轴标签、图例等参数,以便理解商品金额与数量之间的关系。
  1. 组合图绘制
  • 使用Matplotlib库的subplot()函数创建包含多个子图的图表,以便同时展示不同的图表。
  • 将饼状图和柱状图放置在同一个图中,并设置合适的布局、标签等参数。
  • 最后使用tight_layout()函数调整子图的布局,使图表整体美观且易于理解。

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇

三、可视化分析

商品名称和商品金额的雷达图绘制

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇

下单时间趋势分析及折线图绘制

商品金额和数量关系分析及散点图绘制

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇

组合图绘制

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇

四、部分代码

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei']
# 读取数据
df = pd.read_excel('原始记录条.xlsx', engine='openpyxl')
category_sales = df.groupby('商品分类')['数量'].sum()
order_status_counts = df['订单状态'].value_counts()
# 名称和商品金额的雷达图
# 按商品金额降序排序
top20_products = df.groupby('商品名称')['商品金额'].sum().sort_values(ascending=False).head(20)
# 绘制雷达图
categories = top20_products.index
values = top20_products.values
# 角度
angles = np.linspace(0, 2 * np.pi, len(categories), endpoint=False)
# 使雷达图封闭
values = np.concatenate((values, [values[0]]))
angles = np.concatenate((angles, [angles[0]]))
# 创建雷达图
fig, ax = plt.subplots(figsize=(10, 10), subplot_kw=dict(polar=True))
ax.fill(angles, values, color='orange', alpha=0.5)
ax.set_yticklabels([])
ax.set_xticks(angles[:-1])
ax.set_xticklabels(categories, color='grey', size=8)
ax.set_title('Top 20 商品销售额雷达图', size=15, color='blue', y=1.1)
plt.show()
# 剩余代码略...

👇👇👇 关注公众号,回复 “零售数据分析” 获取源码👇👇👇


相关文章
|
20天前
|
存储 数据采集 数据库
用 Python 爬取淘宝商品价格信息时需要注意什么?
使用 Python 爬取淘宝商品价格信息时,需注意法律和道德规范,遵守法律法规和平台规定,避免非法用途。技术上,可选择 Selenium 和 Requests 库,处理反爬措施如 IP 限制、验证码识别和请求频率控制。解析页面数据时,确定数据位置并清洗格式。数据存储可选择 CSV、Excel、JSON 或数据库,定期更新并去重。还需进行错误处理和日志记录,确保爬虫稳定运行。
|
21天前
|
数据采集 Web App开发 iOS开发
如何利用 Python 的爬虫技术获取淘宝天猫商品的价格信息?
本文介绍了使用 Python 爬虫技术获取淘宝天猫商品价格信息的两种方法。方法一使用 Selenium 模拟浏览器操作,通过定位页面元素获取价格;方法二使用 Requests 和正则表达式直接请求页面内容并提取价格。每种方法都有详细步骤和代码示例,但需注意反爬措施和法律法规。
|
14天前
|
SQL 数据挖掘 Python
数据分析编程:SQL,Python or SPL?
数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
|
1月前
|
机器学习/深度学习 人工智能 搜索推荐
某A保险公司的 数据图表和数据分析
某A保险公司的 数据图表和数据分析
60 0
某A保险公司的 数据图表和数据分析
|
1月前
|
数据采集 存储 监控
如何使用 Python 爬取商品数据
如何使用 Python 爬取京东商品数据
|
1月前
|
数据采集 存储 监控
如何使用 Python 爬取京东商品数据
如何使用 Python 爬取京东商品数据
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
数据分析之旅:用Python探索世界
数据分析之旅:用Python探索世界
29 2
|
1月前
|
自然语言处理 Java 编译器
为什么要看 Python 源码?它的结构长什么样子?
为什么要看 Python 源码?它的结构长什么样子?
26 2
|
1月前
|
Python
源码解密 Python 的 Event
源码解密 Python 的 Event
40 1
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
如何理解数据分析及数据的预处理,分析建模,可视化
如何理解数据分析及数据的预处理,分析建模,可视化
51 0