电商用户行为预测数据初探
电商用户行为预测
数据初步探究
- 电商用户行为预测
- 数据分析
- 导入相关包
- 自定义采样函数
- 读取数据
- 数据预处理
- 数据浏览
- 用户的交互行为_训练集
- trn_click.csv文件数据中每个字段的含义
- 用户点击日志信息
- 直方图查看基本属性分布
- 数据分析
数据分析
导入相关包
%matplotlib inline
import pandas as pd
import numpy as npimport matplotlib.pyplot as plt
import seaborn as sns
plt.rc('font', family='SimHei', size=13)import os,gc,re,warnings,sys
warnings.filterwarnings("ignore")
自定义采样函数
def get_all_click_sample(data_path, sample_nums=10000):"""训练集中采样一部分数据调试data_path: 原数据的存储路径sample_nums: 采样数目(这里由于机器的内存限制,可以采样用户做)"""all_click = pd.read_csv(data_path + 'train.csv')all_user_ids = all_click.user_id.unique()sample_user_ids = np.random.choice(all_user_ids, size=sample_nums, replace=False) all_click = all_click[all_click['user_id'].isin(sample_user_ids)]all_click = all_click.drop_duplicates((['user_id', 'product_id', 'event_time']))return all_click
读取数据
采取10000个用户的样本集
data_path = 'F:/data/'
trn_click = get_all_click_sample(data_path, sample_nums=10000)
tst_click = pd.read_csv(data_path+'test.csv')
数据预处理
统计用户的交互行为次数,并添加新的一列count
#计算用户与商品交互的次数,并添加新的一列count
trn_click['click_cnts'] = trn_click.groupby(['user_id'])['event_time'].transform('count')
tst_click['click_cnts'] = tst_click.groupby(['user_id'])['event_time'].transform('count')
数据浏览
用户的交互行为_训练集
trn_click.csv文件数据中每个字段的含义
event_time:用户行为发生的时间
event_type:用户的行为类型[浏览,加入购物车,从购物车删除, 购买]
product_id:用户查看或购买的商品的唯一标识
catagory_id:商品类型ID
category_code:商品类型的实际意义
brand:商品品牌
price:商品价格
user_id: 用户的唯一标识
user_session:用户会话ID
click_cnts:同一用户的交互次数
用户点击日志信息
trn_click.info()
trn_click.describe()
#训练集中的用户数量为10000
trn_click.user_id.nunique()
trn_click.groupby('user_id')['product_id'].count().min() # 训练集里面每个用户至少点击了一个商品
直方图查看基本属性分布
plt.figure()
plt.figure(figsize=(15, 20))
i = 1
for col in ['event_time', 'event_type', 'product_id', 'category_id', 'category_code', 'brand', 'price', 'user_id', 'user_session', 'click_cnts']:plot_envs = plt.subplot(4,3, i)i += 1v = trn_click[col].value_counts().reset_index()[:10]fig = sns.barplot(x=v['index'], y=v[col])for item in fig.get_xticklabels():item.set_rotation(90)plt.title(col)
plt.tight_layout()
plt.show()
从直方图可以基本看出,交互行为发生的时间大多在10月2日。
用户的行为类型大多数为浏览,加入购物车,真正的购买行为较少。
在各大商品中,家电、真空吸尘器、环保用品的关注度最高,其次为文具、服装、手套等,家具,桌柜等产品不是很受购买者青睐。
从商品品牌来看,runail 品牌影响力更大一些。
客户点击率来看,大多数用户交互行为为4次,最高的为29次,至少1次。
数据分析
#用户重复点击
user_click_count = trn_click.groupby(['user_id', 'product_id'])['event_time'].agg({'count'}).reset_index()
user_click_count[:10]
user_click_count['count'].unique()
#用户交互次数
user_click_count.loc[:,'count'].value_counts()
电商用户行为预测数据初探相关推荐
- 电商用户购买行为预测-排名48-0.23
任务:依据电子商务平平台上真实的用户行为记录,利用机器学习相关技术,建立稳健的电商用户购买行为预测模型,预测用户下一个可能会购买的商品. 数据简介 数据整理自一家中等化妆品在线商店公布的网上公开数据集 ...
- CCF大赛:电商用户购买行为预测 解决方案
电商用户购买行为预测 比赛介绍 互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但是网上信息量的大幅增长也带来了"信息过载"的问题.这使得用户在面对大量 ...
- 【Python】电商用户复购数据实战:图解Pandas的移动函数shift
公众号:尤而小屋 作者:Peter 编辑:Peter 本文主要介绍的是pandas中的一个移动函数:shift.最后结合一个具体的电商领域中用户的复购案例来说明如何使用shift函数. 这个案例综合性 ...
- 利用Python对电商用户购买行为进行预测!这都能预测到?
任务:依据电子商务平平台上真实的用户行为记录,利用机器学习相关技术,建立稳健的电商用户购买行为预测模型,预测用户下一个可能会购买的商品. 数据简介 数据整理自一家中等化妆品在线商店公布的网上公开数据集 ...
- 对电商用户的数据分析!
一.以淘宝等为主的用户分析场景 以淘宝.京东和拼多多为典型的用户+商品消费场景,是国内用户量最多的业务场景,也是产生利润最多的业务场景.在这其中,客户拥有最大的自主权,如何有效地加以利用或辨别客户在行 ...
- 电商用户行为实时分析系统(Flink1.10.1)
文章目录 [实验题目]电商用户行为实时分析系统 [实验描述] [实验目的] [实验时间] [实验环境] [实验内容] [实验步骤] 1. 创建Maven项目 1.1项目框架搭建 1.2 声明项目中工具 ...
- 电商用户行为数据分析实战(MySQL +PowerBI)
目录 一.项目概况 二.数据源 三.数据清洗 3.1 选择子集导入,匹配适合的数据类型 3.2 列重命名 3.3重复值处理 3.4 缺失值处理 3.5 异常值处理 从timestamps字段中提取日期 ...
- 基于大数据的线上线下电商用户数据挖掘研究
From:http://www.thebigdata.cn/JieJueFangAn/11932p2.html Online-to-Offline( 简称 O2O)电子商务模式,是一个连接线上用户和线 ...
- 尚硅谷大数据技术之电商用户行为数据分析
尚硅谷大数据技术之电商用户行为分析 第1章 项目整体介绍 1.1 电商的用户行为 电商平台中的用户行为频繁且较复杂,系统上线运行一段时间后,可以收集到大量的用户行为数据,进而利用大数据技术进行深入挖掘 ...
最新文章
- IDEA VS 快捷键 大全
- guava中 graphs 六
- Caffe中Interp层的使用
- mysql运行报错64bit_关于MySQL5.6.25在Win7 64bit下重装后无法启动的解决方法
- url采集工具_大数据关键技术浅谈之大数据采集
- 3-8 基于SpringBoot连接数据库与配置MyBatis实操 创建表sql
- php js记住密码功能,jquery.cookie.js实现用户登录保存密码功能的方法_jquery
- 微服务系列之ZooKeeper注册中心和Nacos注册中心Nacos和Zookeeper对比
- 英语发音表及读法_用英语给孩子讲绘本:果酱英语的Good Morning
- 使用CSVDE批量创建和修改域用户
- 深入web的请求过程
- vector 详解(C++)
- 敏捷软件开发与极限编程
- Android+8.0+微信表情,微信8.0表情为什么不动?微信8.0哪些表情有动画效果?
- 告诉你守望先锋外挂的是什么技术原理
- volatile原理:happen before
- linux /etc/motd,Linux 修改进站提示 /etc/motd
- 青龙面板--花花阅读
- Cadence Allegro解散Group组图文教程及视频演示
- fdsafdsafdsafdsafdsa
热门文章
- 利用matlab求解非线性规划问题
- 使用JavaScript写一个简单的万年历(动态的电子时钟)
- ECE认证机构怎么选?
- 没有网能使用mysql吗_就用本地数据库;即使在没有联网的电脑上也可以放心使用...
- PostgreSQL+postgis入门及简单应用(dijkstra实现最短路径)
- matlab中不能找到ccs,搭建matlab连接ccs生成28335代码的环境(路径不在C盘)
- n5095和n5100哪个好 n5095和n5100区别
- 腾讯地图InfoWindow太大
- 逆水寒能不能网页预约服务器,逆水寒怎么预约春暖花开服务器 春暖花开服务器预约流程...
- 区块链与联邦学习的研究