分享好友 最新动态首页 最新动态分类 切换频道
淘宝用户行为数据挖掘-python
2024-11-07 22:27

关联分析通过寻找最能够解释数据变量之间关系的规则,来找出大量多元数据集中有用的关联规则,他是从大量数据中发现多种数据之间关系的一种方法。其典型案例是“啤酒和尿布”的捆绑销售,即买了尿布的用户还会同时买啤酒。

淘宝用户行为数据挖掘-python

项集 若干个项的集合频繁项集 支持度大于等于最小支持度的项集支持度(support 某个商品或商品组合出现的次数与总次数之间的比例置信度(confidence 购买了商品A,购买商品B的概率,即置信度(A→B提升度(lift 商品A的出现对商品B的出现概率提升程度,提升度(A→B=置信度(A→B)/支持度(B,提升度大于1表明应用关联规则比不应用能产生更好的结果,等于1 表明应用关联规则与不应用产生相同的结果,而小于1时,关联规则有负相关的作用杠杆率(leverage 表示当先导项(A)与后继项(B)独立分布时,先导项与后继项一起出现的次数比预期多多少确信度(conviction 表示X出现而Y不出现的概率,也就是规则预测错误的概率

常用关联算法包括Apriori、FP-Growth、PrefixSpan、SPADE、AprioriAll、AprioriSome等。

(1)“正相关”组合推荐 关联规则中的正相关规则可应用于捆绑销售、库存管理、商品促销设计、页面推荐设计等等,例如网站页面浏览关联分析通过找到用户在不同页面之间的频繁访问关系,以分析用户特定的页面浏览模式,这种频繁模式可用于不同页面之间的分流和引流关系;也可以用来做不同页面的浏览推荐,有利于提高用户网站体验和转化率(2)“负相关”优化组合策略 当一个关联规则中支持度和置信度很高时,说明这个规则是频繁的,但当这个规则的提升度很低时,那么说明规则中的前后项是相互排斥的,规则中的前后项通常不会一起发生,比如将白砂糖与葡糖糖放一起,用户购买了其中一种一般就不会买另一种。这个规则说明我们不能将此规则中的前后项通过组合、打包或关联策略展示给用户,它可以作为组合打包的控制条件来优化组合策略

目的 通过对淘宝用户购买的商品进行关联分析,发掘用户需求之间的联系,通过将具有强相关规则的商品打包组合推荐给客户来提升销量,改善用户体验1 导入库 numpy、pandas为数据读取和基本处理库,使用time库进行数据的筛选,利用mlxtend包里面的Apriori算法进行数据关联分析,并与fpgrowth算法进行比较

 

2 数据读取及筛选 使用pandas循环分块读取文件的内容,并对数据进行处理,通过上篇统计分析可得出12月2号3号的点击量、成交量具有明显的上升,推测为临近双12商家进行促销推广等活动,用户购买的商品无法很好体现出用户的真实需求,不具有很强的泛化能力,故选择前7天具有购买行为的数据进行关联分析

 

3 数据处理 ①商品有将近400万的数量,Dataframe数据结构无法保存如此大量数据并对具体的商品进行关联分析,采取分步的方法,先对商品类目进行关联分析再根据商品类目进行具体商品分析,使用groupby方法得出每个用户购买的商品类目; ②一个用户在7天内所购买的所有商品类目算一个订单,设支持度为0.001对项目集进行初步筛选,category_sel为商品类目出现次数大于573次的商品类; ③以商品类ID为链接键,使用merge方法将data_result与category_sel连接; ⑤data_merge[‘behavior’]=1,将每个商品种类的值设置为1,因为mlxtend库里的算法对处理的数据格式有要求,必须为宽表的格式,所谓宽表,就是把所有的商品都放在列上,每一条购买记录,如果买了该商品,相应的地方就是1,否则就是0,如下图输出所示。 ⑥data_merge[‘category_id’]=data_merge[‘category_id’].map(str) ,将商品类ID由整数类型转化为字符串类型,否则在关联分析时会报错 ValueError: Due to current limitations in Pandas, if the sparse format has integer column names,names, please make sure they either start with or cast them as string column names ⑦使用拆堆unstack的方法,将数据转化为宽表形式,也可以使用mlxtend库中的TransactionEncoder()进行数据的处理; ⑧如果一个数组(包括多维数组)中的大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组,节约空间提高计算效率。本例使用pd.SparseDtype)将数据转化为稀疏数据结构

 

输出如下

 

在这里插入图片描述

4 关联分析 ①使用魔术命令%%time对代码执行时间进行测试; ②使用fpgrowth算法生成频繁项集frequent_itemset,其中参数min_support为集合支持度(即先导项与后继项的并集出现的次数与总次数的比例,use_colnames=True使用Dataframe中的列名作为项集的名字而不是使用Dataframe的列索引。fpgrowth为apriori的改进算法,相对于apriori创建了FP树来存储频繁项集,创建前对不满足最小支持度的项进行删除,减小存储空间,在整个过程只遍历数据集2次,大大的提升了计算效率; ③使用association_rules方法以置信度confidence的阈值0.1生成关联规则rules; ④将关联规则以支持度lift倒序排列; 经过测试使用final_data进行关联分析平均需要6.3s,而使用final_data_sparse稀疏矩阵结构进行关联分析平均需要3.1s,明显提高了计算效率。当使用apriori算法进行分析时报错MemoryError: Unable to allocate 20.0 GiB for an array with shape (231076, 93096) and data type bool,可见当处理的数据量很大时apriori算法需要花费大量内存来进行计算

 

在这里插入图片描述 5 结果处理 将各个项集出现的次数进行统计,并将其与频繁规则合并,如下图所示

 

输出

 

在这里插入图片描述

6 结果分析 从上述结果中可以得出,满足最小支持度0.01和最小置信度0.1的关联规则共有11个,其提升度均大于1,表明应用关联规则比不应用关联规则更能提升用户购买的概率,运营部门可根据分析结果结合实际将具有高支持度、高提升度的商品种类进行组合打包推荐,提升用户购买概率,增加销售量,同时提升用户体验减少用户的搜索查找。

7 淘宝用户购买具体商品关联分析 选择提升度排名前六的商品种类(2640118,4339722,2578647,3738615,381850,1320293,149192,4159072,2885642)进行具体的商品关联分析,其完整代码如下


最新文章
分析大型门户网站截取热门流量的SEO策略
一说到热门流量这个词,我想大家都会很快的想到利用热门话题或者热门事件来获取短期的高流量,在SEO里这种方式一般被称为截取流量,也就是利用SEO的方式来在短期内获得热门关键词的较好排名,从而获取短期的热门流量。比如网络上经常会出现
115网盘提取码怎么用 115网盘提取码下载的方式应用攻略
通过115提取码下载的方式有很多,首先115网盘自身就提供了专门的下载器优蛋。安装优蛋以后,点击文件页面的优蛋下载选框,就会直接弹出优蛋下载器,直接进行下载。或者在优蛋新建下载,直接输入提取码或文件页面网址,也可进行下载。步骤 1
佛山SEO排名应该怎么做?(SEO排名的10个有效方法)
佛山SEO排名应该怎么做?(SEO排名的10个有效方法)排名佛山SEO排名应该怎么做?(SEO排名的10个有效方法) 一、SEO排名应该怎么做?SEO排名的10个有效方法1、在进行SEO排名优化时,关键词研究是至关重要的第一步。通过使用关键词研究工具
PHP在线客服系统平台源码(完全开源的网页在线客服系统)
大家好,又见面了,我是你们的朋友全栈君。  在线客服系统是一个使用PHP、JavaScript和CSS开发的即时网页聊天咨询系统。该项目包含管理员和用户端。管理员端管理所有的管理,如编辑站点内容、管理提供者和预订,管理员在这个系统的管理中
刷360网站快速排名,策略与实践,360seo刷网站关键字排名优化官网
在当今的互联网时代,网站的可见度直接影响着其流量和商业价值,而在众多的搜索引擎中,360搜索作为国内主流的搜索引擎之一,其排名机制自然成为了许多网站管理员关注的焦点,本文将深入探讨如何通过刷360网站快速排名来提升网站的曝光度和
友点 CMS V9.1 后台登录绕过 GetShell
友点CMS9.1是一款国内常用的开源CMS系统,近日被指出存在一个getshell漏洞,该漏洞可允许攻击者通过构造特殊的请求参数向网站注入任意代码,并获取服务器的控制权。经分析,该漏洞影响范围较广,可影响友点CMS9.1及其以下版本。攻击者通过
关键词优化攻略,全方位策略助力企业业绩飙升
本指南深入解析了选择和优化推广关键词的策略,通过精准定位目标受众,提升广告效果。涵盖关键词研究、分析、筛选与持续优化,助力企业实现业绩显著增长。随着互联网的飞速发展,线上推广已经成为企业拓展市场、提升品牌知名度的重要手段,
如何让你的品牌在搜索引擎上闪耀?
如何让你的品牌在搜索引擎上闪耀?在数字化时代,品牌的在线存在感越来越重要,而搜索引擎优化(SEO)是提升品牌在搜索引擎上曝光度的关键。无论是增加网站流量、提高转化率,还是提升品牌声誉,SEO的作用都不可忽视。本文将从关键词优化、
CentOS 7 使用 docker 安装 typecho 博客系统
我的博客 https://savokiss.com 用的是 typecho,一直使用的是 阿里云ECS 直接安装的 MySQL 和 PHP,由于买的时间比较早,当时用的是 CentOS 6.5。后来想玩 docker,发现 docker 只支持 CentOS 7+,加
【魅影T800百度网盘下载】MOPS 魅影T800百度网盘12.18.3免费下载
百度网盘是一款省心、好用的超级云存储产品,已为超过7亿用户提供云服务,空间超大,支持多类型文件的备份、分享、查看和处理,自建多个数据存储中心,更有两项国际安全认证ISO27001&ISO27018为用户数据安全提供护航,如果您想备份文件数
相关文章
推荐文章
发表评论
0评