美文网首页
英国在线零售商数据分析

英国在线零售商数据分析

作者: tuimer | 来源:发表于2019-10-15 08:53 被阅读0次

前言:

数据分析的一般流程,首先确定问题,再带着问题进行下面的分析步骤

分析流程.png

0、分析问题

一份数据可以分析很多维度,为了分析的效率,首先需要明确此次分析的目的(问题)及深度,避免陷入盲目无尽的分析

  1. 订单维度:笔单价和连带率是多少?订单金额与订单内商品件数的关系如何?

  2. 客户维度:客单价是多少?客户消费金额与消费件数的关系如何?

1.理解数据

理解业务指标

我们的问题中有许多业务指标,首先需要理解这些指标的含义

  1. 订单维度:

    • 笔单价

      指每笔交易记录(一张水单)对应的平均交易金额,一般以消费金额除以消费笔数来计量

      商品总额/总笔数

    • 连带率

      指顾客每次购物购买了几件商品

      商品总数量/总笔数

    • 订单金额

      订单单价*订单内商品件数

    • 订单内商品数

      同一笔订单的所有商品件数

  2. 客户维度:

    • 客单价

      销售额/客户数

    • 客户消费金额

      按客户分组的总金额

    • 消费件数

      按客户分组统计的总件数

再理解原始数据,数据共541,909条记录,8个字段

原始数据.png

这些字段的含义分别是发票编号、产品货号、描述、件数、发票时间、单价、订单来源国家

数据探索

查看数据集的情况,可以看到 Description约有1.5k个值缺失,CustomerID字段有13.7w个值缺失

数据集情况
# 增加一个总金额字段
data['sumPrice'] = data['Quantity'].astype(float) * data['UnitPrice'].astype(float)

看一下数值数据的概况


数值数据

可以看到商品数量和单价居然有负值,查看一下这些异常值

异常数据

可以看到发票号是C开头的,得知这是cancel取消的意思,也就是说这些订单被取消了

最大被取消的一单有8万件商品,共有10624条这样的数量为负的记录,后续需要将这些数据做数据清洗

2.数据清洗

  • 空值

  • 异常值

前面数据探索发现Description字段和CustomerID字段有部分数据缺失,无法填充值,所以做删除处理

#删除用户ID字段有缺失的记录
data = data[-data['CustomerID'].isnull()]

异常数据包括数量字段为负值以及单价为负的情况,由于缺失的数据相对于总的记录来说较小,所以这里直接丢弃这部分记录。

# 清洗掉数量为负或者单价<=0的记录
df_success = data[data['sumPrice']>0]</pre>

清洗完的数据有397,884条记录。

3. 数据建模

订单维度

  • 笔单价

    笔单价=商品总额/总笔数,每条记录为一笔交易

# 商品总额/总笔数
    price_per_order = sum(df_success['sumPrice'])/df_success.shape[0]</pre>
得到**笔单价22.40元每单**
  • 连带率

    指顾客每次购物购买了几件商品,所以连带率=销售件数/交易次数

APR = df_success.shape[0]/(df_success['InvoiceNo'].nunique())

连带率约为21.47,连带率非常好!顾客平均每次购买21样商品,这应该是个超市批发数据

  • 订单金额

    每一个InvoiceNo对应一个订单,平均每张订单金额为:

price_per_order = sum(df_success['sumPrice'])/(df_success['InvoiceNo'].nunique())

平均每张订单金额为480.87

  • 订单内商品数

    同一笔订单的所有商品件数

n = sum(df_success['Quantity'])/(df_success['InvoiceNo'].nunique())</pre>

平均每个订单278.86件商品。

客户维度:

  • 客单价

    销售额/客户数

price_per_cust = sum(df_success['sumPrice'])/(df_success['CustomerID'].nunique())</pre>

平均每位顾客消费2054.27

  • 客户消费金额

    按客户分组的总金额

  • 消费件数

    按客户分组统计的总件数

    对于客户消费金额和消费件数,使用数据透视表计算每位顾客的消费金额和件数

# 使用数据透视表计算每位顾客金额和件数
    cust_pivot=pd.pivot_table(df_success,index = 'CustomerID', values = ['sumPrice', 'Quantity'],aggfunc=np.sum)</pre>
按客户分组透视

可以看到排名第一的大客户14646订购数量高达19万件

商品维度

  • 按商品货号分组,计算每种商品的售出数量和销售金额

4.数据可视化

  • 绘制客户的总购买数量及总购买金额(按总购买金额排序,这里仅展示前20名)


    顾客.png

可以看到花钱最多的14646顾客,购买数量及购买金额都是最多的,而购买金额排2、3、位的顾客,购买金额和购买数量比值较大,购买的是一些高价值商品

  • 绘制商品的总售出量和总售出金额

    商品.png

可以看出货号为23843的商品卖的钱最多,而23166的销量与23843几乎持平,销售总金额仅有一半,说明它的单价较低,但客户需求量较高,要保证库存

5. 进一步分析

  • 客户贡献度

  • 商品贡献度

  • 商品关联销售

  • 商品销售趋势

......

相关文章

  • 英国在线零售商数据分析

    前言: 数据分析的一般流程,首先确定问题,再带着问题进行下面的分析步骤 0、分析问题 一份数据可以分析很多维度,为...

  • 数据分析

    电商 图表 一个电商数据分析师的经验总结 电商数据分析基础指标体系 高手告诉你如何电商数据分析 漏斗 #数据分析+...

  • 电商相关视频课程资源

    网易微课堂/电商数据分析 网易电商数据分析实战攻略 联系作者获取视频《电商设计手册》

  • 电商数据分析指标体系

    电商数据分析基础指标体系(文章来源) 本文主要介绍了电商数据分析的基础指标体系,涵盖了流量、销售转化率、客户价值、...

  • 网易微专业电商数据分析师 百度云盘分享

    第1章:电商数据分析师的职业图谱 第2章:电商数据分析师的技法修炼 第3章:实战(一):数据分析师的宏观视野 第4...

  • 欧洲线上时尚类销售大涨,6个月就完成5年市场增幅预期

    德国时尚品类在线零售商Zalando和英国平台ASOS股价在上周四迎来大涨。此前Zalando表示,由于疫情原因,...

  • 电商数据分析

    电商数据分析包括了大行业大平台的数据状况,也可以是小到店铺、单品、sku的某个某个维度详细数据分析。 慢慢买API...

  • 电商数据分析

    本次分析选用kaggle网站的巴西电商数据,时间跨度从2016年9月-2018年9月,数据集中对客户id进行了处理...

  • 电商数据分析

    本地分析选用19年销售额近10亿的某化妆品旗下某一品牌的电商数据,时间跨度为2019年9月-2019年12月 分析...

  • 电商数据分析

    四大思维: 一、第一大思维【对照】 俗称对比,单独看一个数据是不会有感觉的,必需跟另一个数据做对比才会有感觉。 比...

网友评论

      本文标题:英国在线零售商数据分析

      本文链接:https://www.haomeiwen.com/subject/rfjjmctx.html