消费行为,消费行为包括哪些方面,用户消费行为分析
数据源于CDNOW网站的用户购买记录,通过以下字段利用python对CD销售数据分析
分析需要基于业务,首先需要对数据进行了解
数据字段包括
user_id 用户ID order_dt :购买日期 order_products : 购买的产品数量 order_amount : 购买金额数据:点我获取数据 提取码 : h2s4
分析思路:
0、数据预处理
1、数据按月分析
2、用户个体消费分析
3、用户消费分析
4、复购率、回购率分析
0、数据预处理
导入常用的库
import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline import seaborn as sns plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签 plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
导入数据,设置相应的字段
columns = ['user_id','order_dt','order_products','order_amount'] data = pd.read_table('D://CDNOW_master.txt',names=columns,sep='\s+') # 查看数据 data.head() # 数据字段 # user_id 用户ID # order_dt: 购买日期 # order_products: 购买产品数 # order_amount: 购买金额
数据的大概格式
# 大概格式了解 data.info()
数据中没有缺失值,order_dt列数据类型是int,需要进一步转换成datetime类型
data['order_dt'] = pd.to_datetime(data.order_dt,format='%Y%m%d') # 新增一列月份 (对月进行分析) values(数组形式) 因为很多是进行月份的一个处理 data['month'] = data.order_dt.values.astype('datetime64[M]')
修改完数据格式后查看order_dt列的格式
# describe是描述统计 data.describe()
1、按月进数据分析
每月的消费总金额
每月的消费次数
每月的购买产品总数
每月的消费用户数
# 按月分组 grouped_month = data.groupby('month') fig = plt.figure(figsize = (8,12)) ax1 = fig.add_subplot(4,1,1) ax2 = fig.add_subplot(4,1,2) ax3 = fig.add_subplot(4,1,3) ax4 = fig.add_subplot(4,1,4) # 按月金额数 ax1.plot(grouped_month.order_amount.sum(),c='blue') ax1.set_title('每月消费总金额变化趋势') # 按月的订单数 ax2.plot(grouped_month.user_id.count(),c='blue') ax2.set_title('每月订单数变化趋势') # 按月产品数 ax3.plot(grouped_month.order_products.sum(),c='blue') ax3.set_title('每月消费产品购买量') # 每月用户人数 这里需要去重,有些用户重复购买 ax4.plot(grouped_month.user_id.apply(lambda x:len(x.drop_duplicates())),c='blue') # drop_duplicates去重功能 ax4.set_title('每月用户数变化趋势')
按月进行统计,下面通过折线图分别查看数据变化趋势
图一:消费总金额在前三个月达最高峰,或许消费金额较为平稳,有轻微下降趋势
图二:前三个月订单数在10000笔左右,后续月份的订单数在2500左右
图三:产品购买数量 呈现早期购买量多 后期下降趋势
图四:每月消费人数小小于每月的消费次数(订单数),但是区别不大,前三个月每月的消费人数在8000-10000之间,后续月份平均2000左右,一样是前期消费人数多,后期平稳下降趋势
出现这种状况,假设问题是出现在用户身上,早期时间段的用户有异常值,或者由于各类促销营销,由于只有消费数据,无法进一步进行判断
数据透视查看,按月根据用户购买金额,订单数,用户人数
data.pivot_table(index='month', values = ['order_products','order_amount','user_id'], aggfunc = {'order_products':'sum', 'order_amount':'sum', 'user_id':'count'})
2、用户个体分析
用户消费金额,消费次数描述统计 用户消费金额和消费次数的散点图 用户消费金额的分布图 用户消费次数的分布图 用户累积消费金额占比(百分之多少的用户占了百分之多少的消费额)根据用户维度进行分析
#01-用户消费金额和消费次数的描述统计 grouped_user = data.groupby('user_id') grouped_user.sum().describe()
本文标题:消费行为,消费行为包括哪些方面
http://www.jianglexinxi.cn/yanergaozhi/587810.html
精彩评论