python案例:用户画像分析

文章介绍了如何通过Python进行大数据处理,标记高潜用户,这些用户具有超过一天的购买与其他交互行为时间差。通过合并多个月份的行为数据,计算用户购买时间与首次交互时间差,筛选出高潜用户,并分析他们的客户等级分布、年龄段特征以及购买商品的周内分布情况。

1、项目背景

数据

数据-提取码1111

用户数据表user_table字段:

在这里插入图片描述

用户行为数据表Data_Action_201602.csv、Data_Action_201603.csv、Data_Action_201604.csv

在这里插入图片描述

2、标记高潜用户

高潜用户应该具备以下特征:

  • 有购买行为
  • 对一个商品购买和其他交互行为(浏览点击收藏等)时间差应该多于一天

问题:数据量太大每个csv中有100多万条数据—分数据块读取

1,数据合并提取

# 读取文件数据。迭代器,1万条1万条的读取
def read_actionData(filePath,size=10000):
	df = pd.read_csv(filePath,header=0,iterator=True)#迭代器格式,一部分一部分的读取
	chunks = []  #保存数据块的列表
	loop = True  #循环起始值
	while loop:
		try:
			chunk = df.get_chunk(size)[['user_id','sku_id','type','time','cate']]
			chunks.append(chunk)
		except StopIteration:
			loop = False
			print('StopIteration is stopped')
	df_ac = pd.concat(chunks,ignore_index=True)
	return df_ac


#讲多个表的数据合并在一起
df_ac =[]
df_ac.append(read_actionData(filePath='Data_Action_201602.csv'))
df_ac.append(read_actionData(filePath='Data_Action_201603.csv'))
df_ac.append(<
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值