用Python分析用户消费行为

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Python分析用户消费行为相关的知识,希望对你有一定的参考价值。

参考技术A -- 对数据进行描述性统计

可知用户平均每笔订单购买2.4个商品,中位数为2,75分位数为3,说明绝大部分订单的购买量都不多。

但是最大值为99个,数字偏高。

一般来说,根据二八法则,20%的用户贡献的收入会占总收入的80%。

-- 将order_dt改为可计算的时间字符类型并将消费频次按月计算

查看更改以后的数据

(1)每月的消费总金额

(2)每月的用户消费次数

(3)每月的产品购买量

(4)每月的消费人数

(1)对每月的消费总金额绘制折线图分析

由图可知,用户发生购买行为多在1-3月,从四月份以后,消费较为稳定呈轻微下降趋势

(2)对每月消费人数绘制折线图分析

前三个月消费订单次数在10000次接近12000次,后续每月消费次数则在2500次

(3)对每月产品购买量绘制折线图分析

前三个月物品购买量约为25000元,后续月份则保持在7000元左右

(4)对每月的消费人数绘制折线图分析

前三个月每月的消费人数在8000-10000之间,后续月份,平均消费人数在2000不到

(1)用户消费金额,消费次数的秒速统计

(2)用户消费金额和消费次数的散点图

(3)用户消费金额的分布图

(4)用户累计消费金额占比(百分之多少的用户占了百分之多少的消费额)

(1)对用户金额及消费次数绘制散点图分析

过滤掉极值

(3)对用户消费金额作直方图分析

由图可知用户消费金额,绝大部分呈现集中趋势,小部分异常值干扰了判断,可以使用过滤操作排除异常值

(4)对用户累计消费金额占比作折线图分析

由图可知50%的用户仅贡献了15%的消费额度,而排名前5000的用户就贡献了40%的消费额度

(1)用户第一次消费(首购)

(2)用户最后一次消费

(3)新老客户消费比

        ①多少用户仅消费一次

        ②每月新客占比

(4)用户分层

        ① RFM模型

        ②新、老、活跃、回流、流失

(5)用户购买周期(按订单)

        ①用户消费周期描述

        ②用户消费周期分布

(6)用户生命周期(按第一次和最后一次消费) -用户生命周期描述

        ①用户生命周期分布

(7)复购率和回购率分析

(1)(2)对用户第一次及最后一次消费进行分析

大多数人最后一次购买时间都在1-3月份,说明他们购买了一次就不再进行购买,随着时间的递增,最后一次购买数量也在递增,消费呈现流失上升的状况。用户流失比例基本一致,一开始用户迅猛增长数量比较多流失的也比较多。

(3)对新老客消费比进行分析

取每个用户首次和最后一次购买时间

查询只进行过一次购买的用户人数

由图可知,将近一半的用户仅仅消费了一次,新老客户占比接近1:1

(4)RFM模型

RFM模型的三个指标为最近一次消费时间、消费频率 、消费金额 

绘制透视图表进行分析

要将order_dt里面具体的日期变成R中的天数

再将order_amount和order_products重命名为F、M

对用户进行分群(8个)

将RFM中的数值换为容易理解的文字

对重要价值客户及非重要价值客户的消费时间、消费频率绘制散点图

(4)对用户生命周期 新客,活跃,回流,流失进行分析

从上图中可以看到,表中数据有0,1,2···,要将有消费的变为1,没有消费变为0

这里由于进行数据透视,填充了一些 null 值为0,而实际可能用户在当月根本就没有注册,这样会误导第一次消费数据的统计。

将自定义函数运用到数据中

将未注册的替换为空值,这样 count 计算时不会计算到,从而得到每个月的用户分布

对这些用户做面积图分析

(5)用户购买周期 对用户消费周期进行分析

计算相邻两个订单的时间间隔,用shift 函数,shift函数是对数据进行错位,所有数据会往下平移一下,可以计算

以用户分组,对两个订单的间隔进行计算

NaT表示只有一次购买

对时间间隔进行描述性统计分析

去除days并绘制直方图

用户的平均购买周期是68天,绝大部分用户的购买周期都低于100天

(6)对用户生命周期(按第一次和最后一次消费)

描述性分析

去除days并绘制直方图

用户的生命周期受只购买一次的用户影响比较厉害,所以要对用户进行筛选

(7)复购率和回购率分析

复购率:自然月内,购买多次的用户占比(即,购买了两次以上)

回购率:曾经购买过的用户在某一时期的再次购买的占比(可能是在三个月内)

复购率稳定在20%所有,前一个月因为有大量新用户涌入,而这批用户只购买了一次,所以导致复购率降低

用户行为路径分析——附Python桑基图代码实现

参考技术A 用户路径,就是用户在网站或 APP 中的访问行为路径,为了衡量网站/APP的优化效果或者营销推广效果,了解用户的行为偏好,要对访问路径的数据进行分析。

用户路径分析和转化分析有点类似,转化分析能告诉我们最终有多少用户成功转化,多少用户流失了。可这些流失的用户都去了哪?他们在流失前都有什么行为?这些问题转化分析都无法告诉我们,因此我们需要对用户的行为路径进行分析,以帮助我们更深入的了解流失背后的原因。行为路径分析相比于转化分析记录的信息要更广。
用户路径分析,以目标事件为起点|终点,通过描述用户的行为路径,可以查看某个事件节点用户的流向,科学的路径分析能够带来以下价值:

通过用户路径分析,可以将整个用户路径的上下游进行可视化展示。即可看到用户群体的登录,跳转、流失、成交等事件的情况。运营人员可通过用户整体的行为路径找到不同行为间的关系,挖掘规律并找到瓶颈。

路径分析对产品设计的优化与改进有着很大的帮助,了解用户从登录到购买整体行为的主路径和次路径,根据用户路径中各个环节的转化率,发现用户的行为规律和偏好,也用于监测和定位用户路径走向中存在的问题,判断影响转化的主要因素和次要因素,也可以发现某些冷门的功能点。

行为路径分析是用来追踪用户从某个事件开始到某个事件结束过程中的全部动线的分析方法。转化漏斗是人为定义的,而对于用户的行为路径,我们虽然可以通过产品设计进行引导,但却无法控制。因此我们分析用户的行为路径可以了解用户的实际操作行为,让产品顺应用户,通过优化界面交互让产品用起来更加流畅和符合用户习惯,产出更多价值。

所以,简单来说:

漏斗分析:人为设定一条或者若干条漏斗,先有假设再数据验证。

路径分析:基于用户所有行为,挖掘出若干条重要的用户路径,先有数据再验证假设。

桑基图,它的核心是对不同点之间,通过线来连接。线的粗细代表流量的大小。

很多工具都能实现桑基图,比如 excel、tableau,我们今天要用 pyecharts 来绘制。

因为没有用户行为路径相关的公开数据,所以本次实现可视化是根据泰坦尼克号,其生存与遇难的人的数据,来分析流向路径。学会思路,你也可以换成自己公司的用户行为埋点数据。

从父类到子类, 每相邻的两个分类变量都需要计算, 使用pandas中数据透视表, 计算后的数据纵向合并成三列。

需要把所有涉及到的节点去重规整在一起。列表内嵌套字典的形式去重汇总。

数据从哪里流向哪里,流量(值)是多少,循环+字典来组织数据

桑基图是分析用户路径的有效方法之一, 桑基图能非常直观地展现用户旅程,

帮助我们进一步确定转化漏斗中的关键步骤,发现用户的流失点,找到有价值的用户群体,

看用户主要流向了哪里,发现用户的兴趣点,发现被忽略的产品价值,寻找新的机会。

以上是关于用Python分析用户消费行为的主要内容,如果未能解决你的问题,请参考以下文章

Python数据分析用户通话行为分析

用户行为路径分析——附Python桑基图代码实现

用户消费数据分析,基于python

Python大数据-对淘宝用户的行为数据分析

python案例:金融营销活动中欺诈用户行为分析

python数据分析电商用户行为,看完这一篇就够了