11-天猫订单数据分析

目录

前言

一、导入

二、使用步骤

1.数据清洗

2.对订单状况进行分析

3.每种订单数占比情况 

饼图:

 不同省份订单分析地图:

不同省份金额分析柱状图: 

散点图: 

总结


前言

天猫订单数据分析可以从多个角度进行分析,以下是一些常见的分析维度和方法:

  1. 基本统计分析:可以对订单数量、销售额、平均订单金额等进行基本统计分析,以了解整体的销售情况和趋势。

  2. 地域分析:可以根据订单的收货地址, 分析订单的地域分布情况,了解不同地区的销售情况和潜力。

  3. 时间分析:可以根据订单的下单时间、付款时间等,进行时间分析,了解不同时间段的订单量和销售额变化情况,以及不同时间段的用户行为和消费习惯。

  4. 用户行为分析:可以根据用户的购买频次、购买金额、购买种类等,进行用户行为分析,了解用户的购买习惯和偏好,以及不同用户群体的消费特征。

  5. 产品分析:可以根据产品的销售数量、销售额、销售排名等,对产品进行分析,了解产品的市场表现和受欢迎程度,进而指导产品的进一步发展和优化。

  6. 渠道分析:可以根据不同的营销渠道,如搜索引擎、社交媒体等,进行渠道分析,了解不同渠道的转化率、ROI等指标,为优化营销策略提供依据。


一、导入

import numpy as np
import pandas as pd

二、使用步骤

1.数据清洗

代码如下(示例):



data = pd.read_excel(r'C:\Users\B\Desktop\天猫订单.xlsx')
data.head()

data.info()

data.describe(include='all')

# 删除重复值
data.drop_duplicates(inplace=True)

data['星期'] = data['订单付款时间'].dt.dayofweek+1
data['小时'] = data['订单付款时间'].dt.hour
data


data['收货地址'].unique()  # 获取唯一值

data['收货地址'] = data['收货地址'].str.replace('上海','上海市')
data['收货地址'] = data['收货地址'].str.replace('重庆','重庆市')
data['收货地址'] = data['收货地址'].str.replace('北京','北京市')
data['收货地址'] = data['收货地址'].str.replace('天津','天津市')

2.对订单状况进行分析

代码如下(示例):



# 有效订单:有付款,没有退款
valid_order = data[(data['订单付款时间'].notnull()) & (data['退款金额']==0)]
valid_order



# 退款订单:有付款,有退款
refund_order = data[data['退款金额']>0]
refund_order



# 未付款订单:没有付款
unpaid_order = data[data['订单付款时间'].isnull()]
unpaid_order   # NaT not a time 时间空值  NaN  not a number 数字空值

3.每种订单数占比情况 

from pyecharts.charts import *
import pyecharts.options as opts

饼图:

pie_data = [('有效订单',len(valid_order)),('退款订单',len(refund_order)),('未付款订单',len(unpaid_order))]
pie_data




pie =(
    Pie()
    .add('订单',pie_data,
        label_opts=opts.LabelOpts(formatter='{b}:{d}%',font_size=15))
    .set_global_opts(title_opts=opts.TitleOpts(title='各订单占比分析',
                                               title_textstyle_opts=opts.TextStyleOpts(font_size=30,color='green'))
                    )
)
pie.render_notebook()

 不同省份订单分析地图:



data2 = data[data['订单付款时间'].notnull()]

# 按省份统计订单量 name='订单量'把原来的值列改列名为'订单量'
province_order_count = data2.groupby('收货地址')['订单金额'].count().reset_index(name='订单量') 



# 转成数据对
data_pair = dict(zip(province_order_count['收货地址'].tolist(),province_order_count['订单量'].tolist()))

data_pair



# 全国订单量地图

map = (
    Map()
    .add("",
    [list(x) for x in data_pair.items()],
         maptype='china',
         is_map_symbol_show=False
    )
    # 视角配置项 --- 可选项
    .set_global_opts(
        visualmap_opts=opts.VisualMapOpts(is_show=True,min_=0,max_=3100,range_color=['red','orange','yellow','green','blue','indigo','violet'])
    )
    # 设置每块的阴影 
    .set_series_opts(itemstyle_opts=opts.TextStyleOpts(shadow_color="rgba(255,255,255,0.6)",shadow_blur=20)
    )
)

map.render_notebook()

不同省份金额分析柱状图: 



province_payment = data2.groupby('收货地址')[['订单金额','实付金额','退款金额']].sum().reset_index()
province_payment



# 把单位改成万
province_payment['订单金额']= province_payment['订单金额']/10000
province_payment['实付金额']= province_payment['实付金额']/10000
province_payment['退款金额']= province_payment['退款金额']/10000
# 按订单金额进行降序排序
province_payment.sort_values(ascending=False,by='订单金额',inplace=True)



bar = (
    Bar()
    .add_xaxis(province_payment['收货地址'].tolist())
    # stack=True 柱状图堆叠  category_gap柱子间的间隙的比例
    .add_yaxis('实付金额',round(province_payment['实付金额'],2).tolist(),stack=True,category_gap='30%')
    .add_yaxis('退款金额',round(province_payment['退款金额'],2).tolist(),stack=True,category_gap='30%')
    
    .set_global_opts(
        xaxis_opts=opts.AxisOpts(name='省份',axislabel_opts={'rotate':90}),#给x轴添加名称,并旋转x轴标签
        datazoom_opts=[opts.DataZoomOpts()] # 缩放条
    )
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False)) # 去掉柱状图标签
)

# 订单金额 
effect = (
    EffectScatter()
    .add_xaxis(province_payment['收货地址'].tolist())
    .add_yaxis('订单金额',round(province_payment['订单金额'],2).tolist())
    .set_series_opts(label_opts=opts.LabelOpts(position='top'))
)
# 层叠图
overlap = bar.overlap(effect)
grid = Grid()
grid.add(overlap,grid_opts=opts.GridOpts(pos_top='35%'))
grid.render_notebook()

散点图: 



effect = (
    EffectScatter()
    .add_xaxis(province_payment['收货地址'].tolist())
    .add_yaxis('订单金额',round(province_payment['订单金额'],2).tolist())
    .set_series_opts(label_opts=opts.LabelOpts(position='top'))
)
effect.render_notebook()


总结

以上只是一些常见的分析维度和方法,具体的分析内容和方法还需要根据实际情况来确定,同时要结合实际业务场景和需求,进行深入的数据分析和挖掘。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/954686.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Go】Go Gin框架初识(一)

1. 什么是Gin框架 Gin框架:是一个由 Golang 语言开发的 web 框架,能够极大提高开发 web 应用的效率! 1.1 什么是web框架 web框架体系图(前后端不分离)如下图所示: 从上图中我们可以发现一个Web框架最重要…

TCP/IP协议簇及封装与解封装

TCP/IP协议簇 现如今用的参考模型TCP/IP 是一个协议簇,它组建了整个互联网 最主要的是TCP/IP 和这两个协议,所以起名为TCP/IP TCP/IP模型 TCP/IP标准模型——四层 TCP/IP对等模型——五层 数据链路层分为两个子层: LLC子层:逻辑…

《基于卷积神经网络的星图弱小目标检测》论文精读

Dim small target detection based on convolutinal neural network in star image 摘要 由于低信噪比目标和复杂背景,星图中弱小目标的检测是一项具有挑战性的任务。本文提出了一种深度学习方法,用于在背景不均匀和不同类型的噪声下检测单帧星图中的弱…

如何选择Ubuntu版本

一、为什么要选择Ubuntu系统? CentOS官方已全面停止维护CentOS Linux项目 。具体来说,CentOS 8已于2021年12月31日停止维护,而CentOS 7则在2024年6月30日结束了生命周期 。这意味着这些版本不再接收官方的安全更新、bug修复或技术支持 二、…

计算机视觉算法实战——视频分析(Video Analysis)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​​​​ ​​​​​​​​​​​​ ​​​​​ 视频分析是计算机视觉中的一个重要领域,旨在从视频数据中提取有用的信息&…

O2O同城系统架构与功能分析

2015工作至今,10年资深全栈工程师,CTO,擅长带团队、攻克各种技术难题、研发各类软件产品,我的代码态度:代码虐我千百遍,我待代码如初恋,我的工作态度:极致,责任&#xff…

讲一下ZooKeeper的持久化机制?

大家好,我是锋哥。今天分享关于【讲一下ZooKeeper的持久化机制?】面试题。希望对大家有帮助; 讲一下ZooKeeper的持久化机制? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 ZooKeeper 是一个开源的分布式协调服务&…

C++ 文字识别OCR

一.引言 文字识别,也称为光学字符识别(Optical Character Recognition, OCR),是一种将不同形式的文档(如扫描的纸质文档、PDF文件或数字相机拍摄的图片)中的文字转换成可编辑和可搜索的数据的技术。随着技…

数据库(MySQL)练习

数据库(MySQL)练习 一、练习1.15练习1.16练习 二、注意事项2.1 第四天 一、练习 1.15练习 win11安装配置MySQL超详细教程: https://baijiahao.baidu.com/s?id1786910666566008458&wfrspider&forpc 准备工作: mysql -uroot -p #以…

【HTML+CSS+JS+VUE】web前端教程-35-字体图标

优点: 轻量性:加载速度快,减少http请求 灵活性:可以利用CSS设置大小颜色等 兼容性:网页字体支持所有现代浏览器,包括IE低版本 使用字体图标: 1、注册账户并登录 2、选取图标或搜索图标 3、添加购物车 4、下载代码 5、选择font-class引用 iconfont Logo:https://www.ic…

YOLOv8模型改进 第二十九讲 添加可学习小波变换节点 Learnable Wavelet Transform Node 提高小目标检测能力,增强细节特征

在图像去模糊领域,多尺度架构虽被广泛应用,但存在固有缺陷。在渐进恢复过程中,由于底层空间分辨率小,向上传递的特征语义精确但空间模糊,导致多尺度网络在空间细节恢复能力上受限。为提升高频细节部分的恢复质量&#…

数据库基础实验1(创建表,设置外键,检查,不为空,主键等约束)安装mysql详细步骤

安装MySQL详细步骤 1. 下载 MySQL 安装程序 访问 MySQL 官方网站:MySQL Downloads。在下载页面,选择 "MySQL Community (GPL) Downloads"。在 "MySQL Community Server" 部分,根据你的操作系统(Windows&…

CSRF(跨站请求伪造)深度解析

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

详解如何自定义 Android Dex VMP 保护壳

版权归作者所有,如有转发,请注明文章出处:https://cyrus-studio.github.io/blog/ 前言 Android Dex VMP(Virtual Machine Protection,虚拟机保护)壳是一种常见的应用保护技术,主要用于保护 And…

rabbitmqp安装延迟队列

在RabbitMQ中,延迟队列是一种特殊的队列类型。当消息被发送到此类队列后,不会立即投递给消费者,而是会等待预设的一段时间,待延迟期满后才进行投递。这种队列在多种场景下都极具价值,比如可用于处理需要在特定时间触发…

向量数据库如何助力Text2SQL处理高基数类别数据

01. 导语 Agent工作流和 LLMs (大语言模型)的出现,让我们能够以自然语言交互的模式执行复杂的SQL查询,并彻底改变Text2SQL系统的运行方式。其典型代表是如何处理High-Cardinality Categorical Data (高基数类别数据&am…

Docker实践:部署Docker管理工具DockerUI

Docker实践:部署Docker管理工具DockerUI 前言一、DockerUI介绍1.1 DockerUI概述1.2 镜像说明 二、检查本地Docker环境三、拉取DockerUI镜像四、创建DockerUI容器五、访问DockerUI六、DockerUI的基本使用6.1 查询宿主机容器情况6.2 查询Docker镜像列表6.3 查看容器配…

【excel】VBA股票数据获取(搜狐股票)

文章目录 一、序二、excel 自动刷新股票数据三、付费获取 一、序 我其实不会 excel 的函数和 visual basic。因为都可以用matlab和python完成。 今天用了下VBA,还挺不错的。分享下。 上传写了个matlab获取股票数据的,是雅虎财经的。这次是搜狐股票的数…

解锁企业数据管理统一身份认证难题,EasyMR助力企业敏捷提效

在数字经济迅猛发展的当下,企业数据量正以令人惊叹的速度持续增长。据IDC研究显示,至2025年,全球数据总量预计将超175 ZB。数据的爆发式增长对企业而言,既是机遇,更是巨大挑战。 如今,大数据已然成为企业决…

IntelliJ IDEA Type Hierarchy Scope Pattern 学习指南

IntelliJ IDEA Type Hierarchy Scope Pattern 学习指南 什么是 Type Hierarchy? Type Hierarchy 是 IntelliJ IDEA 提供的一个工具,允许开发者查看某个类的继承关系及其实现的接口结构。它是理解类关系的重要工具,尤其在处理复杂的继承体系…