news 2026/2/6 2:05:54

毕设项目分享 大数据电商用户行为分析及可视化(源码+论文)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
毕设项目分享 大数据电商用户行为分析及可视化(源码+论文)

文章目录

  • 0 简介
  • 1. 数据集说明
  • 2. 数据处理
    • 2.1 数据导入
    • 2.2 数据清洗
  • 3.数据分析可视化
    • 3.1 用户流量及购物情况
    • 3.2 用户行为转换率
    • 3.3 用户行为习惯
    • 3.4 基于 RFM 模型找出有价值的用户
    • 3.5 商品维度的分析

0 简介

今天学长向大家介绍一个机器视觉的毕设项目,大数据电商用户行为分析及可视化(源码+论文)

项目运行效果:

毕业设计 基于大数据淘宝用户行为分析

🧿 项目分享:见文末!

1. 数据集说明

这是一份来自淘宝的用户行为数据,时间区间为 2017-11-25 到 2017-12-03,总计 100,150,807 条记录,大小为 3.5 G,包含 5 个字段。

2. 数据处理

2.1 数据导入

将数据加载到 hive, 然后通过 hive 对数据进行数据处理。

-- 建表droptableifexistsuser_behavior;createtableuser_behavior(`user_id`stringcomment'用户ID',`item_id`stringcomment'商品ID',`category_id`stringcomment'商品类目ID',`behavior_type`stringcomment'行为类型,枚举类型,包括(pv, buy, cart, fav)',`timestamp`intcomment'行为时间戳',`datetime`stringcomment'行为时间')rowformat delimitedfieldsterminatedby','linesterminatedby'\n';-- 加载数据LOADDATALOCALINPATH'/home/getway/UserBehavior.csv'OVERWRITEINTOTABLEuser_behavior;

2.2 数据清洗

数据处理主要包括:删除重复值,时间戳格式化,删除异常值。

--数据清洗,去掉完全重复的数据insertoverwritetableuser_behaviorselectuser_id,item_id,category_id,behavior_type,timestamp,datetimefromuser_behaviorgroupbyuser_id,item_id,category_id,behavior_type,timestamp,datetime;--数据清洗,时间戳格式化成 datetimeinsertoverwritetableuser_behaviorselectuser_id,item_id,category_id,behavior_type,timestamp,from_unixtime(timestamp,'yyyy-MM-dd HH:mm:ss')fromuser_behavior;--查看时间是否有异常值selectdate(datetime)asdayfromuser_behaviorgroupbydate(datetime)orderbyday;--数据清洗,去掉时间异常的数据insertoverwritetableuser_behaviorselectuser_id,item_id,category_id,behavior_type,timestamp,datetimefromuser_behaviorwherecast(datetimeasdate)between'2017-11-25'and'2017-12-03';--查看 behavior_type 是否有异常值selectbehavior_typefromuser_behaviorgroupbybehavior_type;

3.数据分析可视化

3.1 用户流量及购物情况

--总访问量PV,总用户量UVselectsum(casewhenbehavior_type='pv'then1else0end)aspv,count(distinctuser_id)asuvfromuser_behavior;

--日均访问量,日均用户量selectcast(datetimeasdate)asday,sum(casewhenbehavior_type='pv'then1else0end)aspv,count(distinctuser_id)asuvfromuser_behaviorgroupbycast(datetimeasdate)orderbyday;

--每个用户的购物情况,加工到 user_behavior_countcreatetableuser_behavior_countasselectuser_id,sum(casewhenbehavior_type='pv'then1else0end)aspv,--点击数sum(casewhenbehavior_type='fav'then1else0end)asfav,--收藏数sum(casewhenbehavior_type='cart'then1else0end)ascart,--加购物车数sum(casewhenbehavior_type='buy'then1else0end)asbuy--购买数fromuser_behaviorgroupbyuser_id;--复购率:产生两次或两次以上购买的用户占购买用户的比例selectsum(casewhenbuy>1then1else0end)/sum(casewhenbuy>0then1else0end)fromuser_behavior_count;

  • 小结:2017-11-25 到 2017-12-03 这段时间,PV 总数为 89,660,671 ,UV 总数为 987,991。从日均访问量趋势来看,进入 12 月份之后有一个比较明显的增长,猜测可能是因为临近双 12 ,电商活动引流产生,另外,2017-12-02 和 2017-12-03 刚好是周末,也可能是周末的用户活跃度本来就比平常高。总体的复购率为 66.01%,说明用户的忠诚度比较高。

3.2 用户行为转换率

--点击/(加购物车+收藏)/购买 , 各环节转化率selecta.pv,a.fav,a.cart,a.fav+a.cartas`fav+cart`,a.buy,round((a.fav+a.cart)/a.pv,4)aspv2favcart,round(a.buy/(a.fav+a.cart),4)asfavcart2buy,round(a.buy/a.pv,4)aspv2buyfrom(selectsum(pv)aspv,--点击数sum(fav)asfav,--收藏数sum(cart)ascart,--加购物车数sum(buy)asbuy--购买数fromuser_behavior_count)asa;

  • 小结:2017-11-25 到 2017-12-03 这段时间,点击数为 89,660,671 ,收藏数为 2,888,258,加购物车数为5,530,446,购买数为 2,015,807。总体的转化率为 2.25%,这个值可能是比较低的,从加到购物车数来看,有可能部分用户是准备等到电商节日活动才进行购买。所以合理推断:一般电商节前一段时间的转化率会比平常低。

3.3 用户行为习惯

-- 一天的活跃时段分布selecthour(datetime)ashour,sum(casewhenbehavior_type='pv'then1else0end)aspv,--点击数sum(casewhenbehavior_type='fav'then1else0end)asfav,--收藏数sum(casewhenbehavior_type='cart'then1else0end)ascart,--加购物车数sum(casewhenbehavior_type='buy'then1else0end)asbuy--购买数fromuser_behaviorgroupbyhour(datetime)orderbyhour;

--一周用户的活跃分布selectpmod(datediff(datetime,'1920-01-01')-3,7)asweekday,sum(casewhenbehavior_type='pv'then1else0end)aspv,--点击数sum(casewhenbehavior_type='fav'then1else0end)asfav,--收藏数sum(casewhenbehavior_type='cart'then1else0end)ascart,--加购物车数sum(casewhenbehavior_type='buy'then1else0end)asbuy--购买数fromuser_behaviorwheredate(datetime)between'2017-11-27'and'2017-12-03'groupbypmod(datediff(datetime,'1920-01-01')-3,7)orderbyweekday;

  • 小结:晚上21点-22点之间是用户一天中最活跃的时候,凌晨 4 点,则是活跃度最低的时候。一周中,工作日活跃度都差不多,到了周末活跃度有明显提高。

3.4 基于 RFM 模型找出有价值的用户

RFM 模型是衡量客户价值和客户创利能力的重要工具和手段,其中由3个要素构成了数据分析最好的指标,分别是:

  • R-Recency(最近一次购买时间)
  • F-Frequency(消费频率)
  • M-Money(消费金额)
--R-Recency(最近一次购买时间), R值越高,一般说明用户比较活跃selectuser_id,datediff('2017-12-04',max(datetime))asR,dense_rank()over(orderbydatediff('2017-12-04',max(datetime)))asR_rankfromuser_behaviorwherebehavior_type='buy'groupbyuser_idlimit10;--F-Frequency(消费频率), F值越高,说明用户越忠诚selectuser_id,count(1)asF,dense_rank()over(orderbycount(1)desc)asF_rankfromuser_behaviorwherebehavior_type='buy'groupbyuser_idlimit10;--M-Money(消费金额),数据集无金额,所以就不分析这一项

对有购买行为的用户按照排名进行分组,共划分为5组,
前 - 1/5 的用户打5分
前 1/5 - 2/5 的用户打4分
前 2/5 - 3/5 的用户打3分
前 3/5 - 4/5 的用户打2分
前 4/5 - 的用户打1分
按照这个规则分别对用户时间间隔排名打分和购买频率排名打分,最后把两个分数合并在一起作为该名用户的最终评分

withcteas(selectuser_id,datediff('2017-12-04',max(datetime))asR,dense_rank()over(orderbydatediff('2017-12-04',max(datetime)))asR_rank,count(1)asF,dense_rank()over(orderbycount(1)desc)asF_rankfromuser_behaviorwherebehavior_type='buy'groupbyuser_id)selectuser_id,R,R_rank,R_score,F,F_rank,F_score,R_score+F_scoreASscorefrom(select*,casentile(5)over(orderbyR_rank)when1then5when2then4when3then3when4then2when5then1endasR_score,casentile(5)over(orderbyF_rank)when1then5when2then4when3then3when4then2when5then1endasF_scorefromcte)asaorderbyscoredesclimit20;

  • 小结:可以根据用户的价值得分,进行个性化的营销推荐。

3.5 商品维度的分析

--销量最高的商品selectitem_id,sum(casewhenbehavior_type='pv'then1else0end)aspv,--点击数sum(casewhenbehavior_type='fav'then1else0end)asfav,--收藏数sum(casewhenbehavior_type='cart'then1else0end)ascart,--加购物车数sum(casewhenbehavior_type='buy'then1else0end)asbuy--购买数fromuser_behaviorgroupbyitem_idorderbybuydesclimit10;--销量最高的商品大类selectcategory_id,sum(casewhenbehavior_type='pv'then1else0end)aspv,--点击数sum(casewhenbehavior_type='fav'then1else0end)asfav,--收藏数sum(casewhenbehavior_type='cart'then1else0end)ascart,--加购物车数sum(casewhenbehavior_type='buy'then1else0end)asbuy--购买数fromuser_behaviorgroupbycategory_idorderbybuydesclimit10;
  • 小结:缺失商品维表,所以没有太多分析价值。假如有商品维表,可以再展开,以商品纬度进行分析,比如不同行业、不同产品的转化率,还有竞品分析等等。

项目运行效果:

毕业设计 基于大数据淘宝用户行为分析

🧿 项目分享:见文末!

详细分析文档

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/3 2:28:01

新能源汽车车载双向 OBC 的 MATLAB 仿真探索

新能源汽车车载双向OBC,PFC,LLC,V2G 双向 充电桩 电动汽车 车载充电机 充放电机 MATLAB仿真模型 (1)基于V2G技术的双向AC/DC、DC/DC充放电机MATLAB仿真模型; (2)前级电路为双向AC/D…

作者头像 李华
网站建设 2026/2/3 5:15:47

python基于Vue的电影院售票选座评价影评系统_5s356_django Flask pycharm项目

目录已开发项目效果实现截图关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!已开发项目效果实现截图 同行可拿货,招校园代理 ,本人源头供货商 python基于Vue的电影院售票选座评价影…

作者头像 李华
网站建设 2026/1/30 6:10:12

华为 ModelEngine Nexent 零代码平台智能体能力深度实践评测

前言 在 AI 技术加速落地的当下,智能体已从概念走向产业实践,但传统开发模式依赖复杂编程与 Prompt 工程,高门槛成为制约其规模化普及的核心瓶颈。而华为 ModelEngine Nexent 作为零代码级智能体开发平台,精准切中这一行业痛点&am…

作者头像 李华
网站建设 2026/1/30 7:18:02

python基于Vue的北京市公交线路管理系统_vi06l_django Flask pycharm项目

目录已开发项目效果实现截图关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!已开发项目效果实现截图 同行可拿货,招校园代理 ,本人源头供货商 python基于Vue的北京市公交线路管理系…

作者头像 李华
网站建设 2026/2/4 16:32:14

目录结构保留的JAVA文件夹上传实现思路

大文件传输系统解决方案 项目背景与需求分析 作为北京某软件公司项目负责人,我们近期面临一个技术挑战:在产品中集成一个高性能、高稳定性的超大文件传输系统。经过详细需求分析,我们确认以下核心需求: 大文件处理能力&#xf…

作者头像 李华
网站建设 2026/2/4 19:21:17

毕设项目 基于机器视觉的驾驶疲劳检测系统(源码+论文)

文章目录 0 前言1 项目运行效果2 课题背景3 Dlib人脸检测与特征提取3.1 简介3.2 Dlib优点 4 疲劳检测算法4.1 眼睛检测算法4.2 打哈欠检测算法4.3 点头检测算法 5 PyQt55.1 简介5.2相关界面代码 6 最后 0 前言 🔥这两年开始毕业设计和毕业答辩的要求和难度不断提升…

作者头像 李华