R语言关联规则模型(Apriori算法)挖掘杂货店的交易数据与交互可视化

简介: R语言关联规则模型(Apriori算法)挖掘杂货店的交易数据与交互可视化

原文链接:http://tecdat.cn/?p=22732


关联规则挖掘是一种无监督的学习方法,从交易数据中挖掘规则。它有助于找出数据集中的关系和一起出现的项目。在这篇文章中,我将解释如何在R中提取关联规则。

关联规则模型适用于交易数据。交易数据的一个例子可以是客户的购物历史。

数据分析的第一件事是了解目标数据结构和内容。出于学习的目的,我认为使用一个简单的数据集更好。一旦我们知道了这个模型,就可以很容易地把它应用于更复杂的数据集。

在这里,我们使用杂货店的交易数据。首先,我们创建一个数据框并将其转换为交易类型。

读取数据

n=500 # 交易数量
trans <- data.frame() # 收集数据的数据框架

创建数据并将其收集到交易数据框中。

for(i in 1:n)
{
  count <- sample(1:3, 1) # 从1到3的物品计数
  如果(i %% 2 == 1)
  {
    if(!add_product %in% selected)
    {
      tran <- data.frame(items = add_product, tid = i)

检查交易数据框中的数据。

image.png

接下来,我们需要将生成的数据框转换为交易数据类型。

as(split(\[, "items"\], \[, "tid"\]), "transa")

image.png

为了检查交易数据的内容,我们使用 inspect() 命令。

image.png

挖掘规则

sort(rules_1, dby = "confidence")

image.png

.......

我们从上面的列表中获取第一个rhs项(规则后项)来检查该项的规则。但如果你知道目标项目,可以在参数中只写rhs="melon"。

inspect(rules_1@rhs\[1\])

image.png

> rhs_item <- gsub("\\\}","", rhs)

image.png

我们为我们的rhs_item建立规则

image.png

按 "置信度 "排序并检查规则

sort(rules_2, "confidence")

image.png

结果可视化

最后,我们从规则集_2中绘制出前5条规则。

> plot(rules_2\[1:5\])

image.png

图1

绘制全部规则

546ebfc0758af63555b33ab724a936b9_640_wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1.png

图2


交互可视化

绘制出前5条规则

precision     =  3
igraphLayout     =  layout_nicely
list(nodes = nodes, edges = edges, nodesToDataframe = nodesToDataframe, 
            edgesToDataframe = edgesToDataframe,
x$legend <- legend
    htmlwidgets::createWidget( x, width = width, 
        height = height)

e5e0d4007cd17de0d3d9bc627c1e95e9_640_wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1.gif

图3

绘制全部规则

ec07211b5af19f9fa5565050e11ce914_640_wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1.png

图4

f370f7ce4eba414556518bfce01e0196_640_wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1.gif

图5

相关文章
|
21天前
|
存储 编解码 负载均衡
数据分片算法
【10月更文挑战第25天】不同的数据分片算法适用于不同的应用场景和数据特点,在实际应用中,需要根据具体的业务需求、数据分布情况、系统性能要求等因素综合考虑,选择合适的数据分片算法,以实现数据的高效存储、查询和处理。
|
21天前
|
存储 缓存 算法
分布式缓存有哪些常用的数据分片算法?
【10月更文挑战第25天】在实际应用中,需要根据具体的业务需求、数据特征以及系统的可扩展性要求等因素综合考虑,选择合适的数据分片算法,以实现分布式缓存的高效运行和数据的合理分布。
|
1月前
|
机器学习/深度学习 人工智能 算法
"拥抱AI规模化浪潮:从数据到算法,解锁未来无限可能,你准备好迎接这场技术革命了吗?"
【10月更文挑战第14天】本文探讨了AI规模化的重要性和挑战,涵盖数据、算法、算力和应用场景等方面。通过使用Python和TensorFlow的示例代码,展示了如何训练并应用一个基本的AI模型进行图像分类,强调了AI规模化在各行业的广泛应用前景。
31 5
|
25天前
|
存储 JSON 算法
TDengine 检测数据最佳压缩算法工具,助你一键找出最优压缩方案
在使用 TDengine 存储时序数据时,压缩数据以节省磁盘空间是至关重要的。TDengine 支持用户根据自身数据特性灵活指定压缩算法,从而实现更高效的存储。然而,如何选择最合适的压缩算法,才能最大限度地降低存储开销?为了解决这一问题,我们特别推出了一个实用工具,帮助用户快速判断并选择最适合其数据特征的压缩算法。
31 0
|
1月前
|
人工智能 算法 前端开发
无界批发零售定义及无界AI算法,打破传统壁垒,累积数据流量
“无界批发与零售”是一种结合了批发与零售的商业模式,通过后端逻辑、数据库设计和前端用户界面实现。该模式支持用户注册、登录、商品管理、订单处理、批发与零售功能,并根据用户行为计算信用等级,确保交易安全与高效。
|
1月前
|
前端开发 算法 JavaScript
无界SaaS模式深度解析:算力算法、链接力、数据确权制度
私域电商的无界SaaS模式涉及后端开发、前端开发、数据库设计、API接口、区块链技术、支付和身份验证系统等多个技术领域。本文通过简化框架和示例代码,指导如何将核心功能转化为技术实现,涵盖用户管理、企业店铺管理、数据流量管理等关键环节。
|
1月前
|
机器学习/深度学习 算法 数据处理
EM算法对人脸数据降维(机器学习作业06)
本文介绍了使用EM算法对人脸数据进行降维的机器学习作业。首先通过加载ORL人脸数据库,然后分别应用SVD_PCA、MLE_PCA及EM_PCA三种方法实现数据降维,并输出降维后的数据形状。此作业展示了不同PCA变种在人脸数据处理中的应用效果。
34 0
|
1月前
|
存储 算法 搜索推荐
算法进阶之路:Python 归并排序深度剖析,让数据排序变得艺术起来!
算法进阶之路:Python 归并排序深度剖析,让数据排序变得艺术起来!
72 0
|
2月前
|
存储 算法 测试技术
预见未来?Python线性回归算法:数据中的秘密预言家
【9月更文挑战第11天】在数据的海洋中,线性回归算法犹如智慧的预言家,助我们揭示未知。本案例通过收集房屋面积、距市中心距离等数据,利用Python的pandas和scikit-learn库构建房价预测模型。经过训练与测试,模型展现出较好的预测能力,均方根误差(RMSE)低,帮助房地产投资者做出更明智决策。尽管现实关系复杂多变,线性回归仍提供了有效工具,引领我们在数据世界中自信前行。
51 5
下一篇
无影云桌面