分享好友 最新动态首页 最新动态分类 切换频道
淘宝用户行为数据挖掘-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,专注关键词优化,助力企业网站快速提升排名。本文揭秘高效策略,助您优化关键词,实现网站流量激增。随着互联网的飞速发展,企业对的需求日益增长,在这个竞争激烈的市场环境中,如何让企业网站在搜索引擎中脱颖而出,成为众
警惕,裸聊诈骗竟为AI换脸“照骗”!
  近年来,AI换脸技术被应用在各个领域,不法分子也动起了歪心思,利用AI换脸实施犯罪,例如伪造不雅视频、换脸诈骗等。AI换脸不仅可以快速将一张人脸无缝融入另一个图片或视频中,甚至连人物表情、口型都可以用AI技术合成,具有更强的以
移动站seo优化-怎么做好移动网站的SEO优化-移动seo优化方法软件免费
移动站seo优化,移动网站怎么做SEO优化,移动网站SEO优化有什么规范。首先搜索引擎对移动网站的打开响应速度有一定的要求,打开速度越快越适合优化,打开速度越慢,越不适合优化。随着互联网的发展,
卖家精灵Mac 4.5.2
卖家精灵Mac官方版是款很多网店店主使用的关键词优化工具。卖家精灵Mac正式版为用户提供选品、关键词调研、竞品分析、关键词工具等丰富功能,用户可以通过它来查看各种商品最新热门搜索词。卖家精灵Mac还可以帮助购物网站上面的商家进行购
Broken Link Detector
Broken Link Detector为用户提供了一套死链接检测方案。其能够自动分析网站中的链接,并查看是否出现死链接。通过该程序可以帮助您查询网站上的无效的链接,辅助进行清除。检测结果分为全部与错误两部分,您可以查看所有的链接结果是否正常
群晖IPv6动态域名解析保姆级教程
创作立场声明:文章所述内容均经个人实践成功,但不保证所有设备均可使用,如有问题还请见谅,欢迎值友理性讨论,不喜勿喷。上篇文章我介绍了移动宽带如何通过IPv6获取公网IP,达到外网访问的目的。但是IPv6地址不仅巨长,不便输入,而且是
微信公众号消息模板——Java
目录 前言 介绍 准备操作 代码 前言 公众号消息模板推送有很多便利,尤其是针对小程序的消息提醒,具有及时性,准确性等有优势,还可以点击进入小程序当然更加适配小程序的有专门的小程序订阅消息,这个之后
H5开发,让传统网页焕发新生机
随着移动互联网的快速发展,逐渐成为了一个热门话题。那么,什么是H5呢?简单来说,H5就是HTML5的简称,它是一种基于的方式。相较于传统的网页开发方式,H5具有许多优势,如跨平台、响应式设计、性能优化等。专业的H5开发公司新里程科技将
如何在Win7上使用EFI和GPT?
如何在Win7上使用EFI和GPT?传统的BIOS和MBR分区已经不能满足现代计算机的需求,EFI和GPT分区成为了新的选择。使用EFI和GPT分区可以提高系统的启动速度和硬件支持性,本文将介绍如何在Windows7上使用EFI和GPT分区,并说明使用EFI和GPT的好
相关文章
推荐文章
发表评论
0评