R语言关联规则模型(Apriori算法)挖掘杂货店的交易数据与交互可视化
  TEZNKK3IfmPf 2023年11月15日 23 0

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

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

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

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

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

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

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

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

挖掘规则
sort(rules_1, dby = "confidence")

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

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

.......

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

 inspect(rules_1@rhs[1])

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

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

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

我们为我们的rhs_item建立规则

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

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

sort(rules_2, "confidence")

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

结果可视化

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

> plot(rules_2[1:5])

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

绘制全部规则

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

交互可视化

绘制出前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)

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

绘制全部规则

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

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

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月15日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月15日   35   0   0 R语言
TEZNKK3IfmPf