电商用户行为预测

数据初步探究

  • 电商用户行为预测
  • 数据分析
    • 导入相关包
    • 自定义采样函数
    • 读取数据
    • 数据预处理
    • 数据浏览
      • 用户的交互行为_训练集
        • 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()

电商用户行为预测数据初探相关推荐

  1. 电商用户购买行为预测-排名48-0.23

    任务:依据电子商务平平台上真实的用户行为记录,利用机器学习相关技术,建立稳健的电商用户购买行为预测模型,预测用户下一个可能会购买的商品. 数据简介 数据整理自一家中等化妆品在线商店公布的网上公开数据集 ...

  2. CCF大赛:电商用户购买行为预测 解决方案

    电商用户购买行为预测 比赛介绍 互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但是网上信息量的大幅增长也带来了"信息过载"的问题.这使得用户在面对大量 ...

  3. 【Python】电商用户复购数据实战:图解Pandas的移动函数shift

    公众号:尤而小屋 作者:Peter 编辑:Peter 本文主要介绍的是pandas中的一个移动函数:shift.最后结合一个具体的电商领域中用户的复购案例来说明如何使用shift函数. 这个案例综合性 ...

  4. 利用Python对电商用户购买行为进行预测!这都能预测到?

    任务:依据电子商务平平台上真实的用户行为记录,利用机器学习相关技术,建立稳健的电商用户购买行为预测模型,预测用户下一个可能会购买的商品. 数据简介 数据整理自一家中等化妆品在线商店公布的网上公开数据集 ...

  5. 对电商用户的数据分析!

    一.以淘宝等为主的用户分析场景 以淘宝.京东和拼多多为典型的用户+商品消费场景,是国内用户量最多的业务场景,也是产生利润最多的业务场景.在这其中,客户拥有最大的自主权,如何有效地加以利用或辨别客户在行 ...

  6. 电商用户行为实时分析系统(Flink1.10.1)

    文章目录 [实验题目]电商用户行为实时分析系统 [实验描述] [实验目的] [实验时间] [实验环境] [实验内容] [实验步骤] 1. 创建Maven项目 1.1项目框架搭建 1.2 声明项目中工具 ...

  7. 电商用户行为数据分析实战(MySQL +PowerBI)

    目录 一.项目概况 二.数据源 三.数据清洗 3.1 选择子集导入,匹配适合的数据类型 3.2 列重命名 3.3重复值处理 3.4 缺失值处理 3.5 异常值处理 从timestamps字段中提取日期 ...

  8. 基于大数据的线上线下电商用户数据挖掘研究

    From:http://www.thebigdata.cn/JieJueFangAn/11932p2.html Online-to-Offline( 简称 O2O)电子商务模式,是一个连接线上用户和线 ...

  9. 尚硅谷大数据技术之电商用户行为数据分析

    尚硅谷大数据技术之电商用户行为分析 第1章 项目整体介绍 1.1 电商的用户行为 电商平台中的用户行为频繁且较复杂,系统上线运行一段时间后,可以收集到大量的用户行为数据,进而利用大数据技术进行深入挖掘 ...

最新文章

  1. IDEA VS 快捷键 大全
  2. guava中 graphs 六
  3. Caffe中Interp层的使用
  4. mysql运行报错64bit_关于MySQL5.6.25在Win7 64bit下重装后无法启动的解决方法
  5. url采集工具_大数据关键技术浅谈之大数据采集
  6. 3-8 基于SpringBoot连接数据库与配置MyBatis实操 创建表sql
  7. php js记住密码功能,jquery.cookie.js实现用户登录保存密码功能的方法_jquery
  8. 微服务系列之ZooKeeper注册中心和Nacos注册中心Nacos和Zookeeper对比
  9. 英语发音表及读法_用英语给孩子讲绘本:果酱英语的Good Morning
  10. 使用CSVDE批量创建和修改域用户
  11. 深入web的请求过程
  12. vector 详解(C++)
  13. 敏捷软件开发与极限编程
  14. Android+8.0+微信表情,微信8.0表情为什么不动?微信8.0哪些表情有动画效果?
  15. 告诉你守望先锋外挂的是什么技术原理
  16. volatile原理:happen before
  17. linux /etc/motd,Linux 修改进站提示 /etc/motd
  18. 青龙面板--花花阅读
  19. Cadence Allegro解散Group组图文教程及视频演示
  20. fdsafdsafdsafdsafdsa

热门文章

  1. 利用matlab求解非线性规划问题
  2. 使用JavaScript写一个简单的万年历(动态的电子时钟)
  3. ECE认证机构怎么选?
  4. 没有网能使用mysql吗_就用本地数据库;即使在没有联网的电脑上也可以放心使用...
  5. PostgreSQL+postgis入门及简单应用(dijkstra实现最短路径)
  6. matlab中不能找到ccs,搭建matlab连接ccs生成28335代码的环境(路径不在C盘)
  7. n5095和n5100哪个好 n5095和n5100区别
  8. 腾讯地图InfoWindow太大
  9. 逆水寒能不能网页预约服务器,逆水寒怎么预约春暖花开服务器 春暖花开服务器预约流程...
  10. 区块链与联邦学习的研究