数据分析实战项目| 用户消费行为的分析报告

该报告基于CDNow网站1997年至1998年的用户消费数据,详细分析了用户消费趋势、个体消费、消费行为、复购率、回购率和留存率。结果显示,用户消费在前三个月异常高,之后稳定下降;大部分订单购买数量少,用户消费金额和次数呈右偏分布;用户分层显示20%的用户贡献了60%的消费金额,符合二八定律。此外,用户复购率稳定在20%左右,回购率约为30%,留存率在前三个月最高,随后逐渐稳定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户消费行为的分析报告

数据来源 CDNow 网站的用户购买明细,通过各个指标对用户行为进行分析,可以更清楚了解用户行为习惯,为进一步制定营销策略提供依据。

具体指标包括:

  • 户消费趋势分析
  • 用户个体消费分析
  • 用户消费行为分析
  • 复购率和回购率分析
  • 留存率分析

一、理解数据

本数据集共有 6 万条左右数据,数据为 CDNow 网站 1997年1月至1998年6月的用户行为数据,共计 4 列字段,分别是:

  • user_id: 用户ID
  • order_dt: 购买日期
  • order_products: 购买产品数
  • order_amount: 购买金额

二、清洗数据

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False
plt.style.use('ggplot')

1. 数据加载

columns = ['user_id', 'order_dt', 'order_products', 'order_amount']
# 将 order_dt 转化为日期数据类型格式
dateparse = lambda dates: pd.datetime.strptime(dates,'%Y%m%d')
df = pd.read_table(r'C:\Users\86134\Desktop\CDNOW_master.txt',
                   names = columns,parse_dates=['order_dt'],
                   sep = '\s+',date_parser=dateparse
                    )

3.数据探索

print(df.info())
print('-'*30)
print(df.isnull().sum())
print('-'*30)
print(df.describe())
print('-'*30)
print(df.head())
print('-'*30)
print(df.tail())
print('-'*30)
输出
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 69659 entries, 0 to 69658
Data columns (total 4 columns):
user_id           69659 non-null int64
order_dt          69659 non-null datetime64[ns]
order_products    69659 non-null int64
order_amount      69659 non-null float64
dtypes: datetime64[ns](1), float64(1), int64(2)
memory usage: 2.1 MB
None
------------------------------
user_id           0
order_dt          0
order_products    0
order_amount      0
dtype: int64
------------------------------
            user_id  order_products  order_amount
count  69659.000000    69659.000000  69659.000000
mean   11470.854592        2.410040     35.893648
std     6819.904848        2.333924     36.281942
min        1.000000        1.000000      0.000000
25%     5506.000000        1.000000     14.490000
50%    11410.000000        2.000000     25.980000
75%    17273.000000        3.000000     43.700000
max    23570.000000       99.000000   1286.010000
------------------------------
   user_id   order_dt  order_products  order_amount
0        1 1997-01-01               1         11.77
1        2 1997-01-12               1         12.00
2        2 1997-01-12               5         77.00
3        3 1997-01-02               2         20.76
4        3 1997-03-30               2         20.76
------------------------------
       user_id   order_dt  order_products  order_amount
69654    23568 1997-04-05               4         83.74
69655    23568 1997-04-22               1         14.99
69656    23569 1997-03-25               2         25.74
69657    23570 1997-03-25               3         51.12
69658    23570 1997-03-26               2         42.96
------------------------------

通过数据探索我们发现

  • 大部分订单只购买了少量商品 (平均 2.4), 有一定极值干扰;
  • 用户消费的金额比较稳定, 平均消费 35 元, 中位数在 35 元, 有一定极值干扰;
  • 数据呈右偏分布;
  • 没有空缺数据,可以直接分析,但考虑到是按月分析,所以将日期进行解析(实际业务是否按月分析,取决于消费频率) 。
# 解析日期
df['oreder_dt'] = pd.to_datetime(df.order_dt, format='%Y%m%d')
df['month'] = df.order_dt.values.astype('datetime64[M]') 

三、用户消费趋势分析(按月)

  • 每月的产品购买数量
  • 每月的消费总金额
  • 每月的消费次数
  • 每月的消费人数

1.每月的产品购买数量

grouped_momnth = df.groupby('month')
plt.figure(1, figsize=(10, 4))
plt.title('每月用户购买张数')
plt.ylabel('CD碟数(张)')
grouped_momnth.order_products.sum().plot()
plt.show()


从图中可以看到,销量在前几个月异常高涨,并在3月达到最高峰,后续销量较为稳定,且有轻微下降趋势。

2.每月的消费金额

plt.figure(1, figsize=(10, 4))
plt.title('每月销售额')
plt.ylabel('销售额')
grouped_momnth.order_amount.sum().plot()
plt.show()

在这里插入图片描述
由图可以看到,消费金额也一样呈现早期销售多,后期平稳下降趋势,而且前三月数据都呈现出异常状态,为什么呈现这样的原因呢?我们可以假设前三个月有促销活动,或者用户本身出了问题,早期用户有异常值。但这里只有消费数据,因此不能做出判断。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值