R Apriori单个列之间的功能相关性

时间:2016-06-28 18:17:51

标签: r apriori arules

我试图从包含以下列的CSV中找到关联规则: 描述了购买的内容和UUID,它是来自个人的每笔交易的唯一ID。这意味着它可以是一个UUID的描述

我试图找到的关联规则的类型是,例如,如果我看到许多不同的UUID有两个描述,则称它们为肉和啤酒。规则会显示出:{肉} => {啤酒}有它的支持,信心和提升。

可以在此处找到csv:https://github.com/antonio1695/RStudio/blob/master/facturas_du.csv

我想做的是:

libary(arules)
df <- read.csv("facturas_du.csv")
rules <- apriori(df_du,parameter=list(support=0.01,confidence=0.3))

尽管如此,它给我的关联规则很少支持该类型:

{An UUID} => {A Desc}

这不是我正在寻找的东西。

我希望我的UUID成为我的交易ID,并且有类似的内容:

UUID     DESC
123      Meat,Beer

我希望有人能帮助我找到该怎么做。谢谢!

1 个答案:

答案 0 :(得分:1)

UUID不应该是一个项目。您应首先手动将数据转换为事务,以查看数据的使用方式和方式。以下是您目前的工作:

library(arules)
df <- read.csv("https://raw.githubusercontent.com/antonio1695/RStudio/master/facturas_du.csv")
head(df)
                         Desc                                 UUID
1                         CONSUMO 38BD37F1-06E9-476B-8779-E6E8139B2586
2            CONSUMO DE ALIMENTOS 2BE26034-ED04-407A-ACE7-51764EEBE8CF
3            CONSUMO DE ALIMENTOS 9b24977d-8e67-4b0f-a55f-c0e886561b9d
4 PAGO POR USO DE ESTACIONAMIENTO 6FAEBEF1-2CCB-4DAB-BD2F-E765EC093F56
5      COPIA CARTA B&N 1-99 HOJAS 4D3F3204-3699-42DE-A97B-8D0F990B54A5
6  IMPRESION CARTA B&N 1-99 HOJAS 4D3F3204-3699-42DE-A97B-8D0F990B54A5

trans <- as(df, "transactions")

inspect(head(trans))
   items                                       transactionID
1 {Desc=CONSUMO,                                           
   UUID=38BD37F1-06E9-476B-8779-E6E8139B2586}             1
2 {Desc=CONSUMO DE ALIMENTOS,                              
   UUID=2BE26034-ED04-407A-ACE7-51764EEBE8CF}             2
3 {Desc=CONSUMO DE ALIMENTOS,                              
   UUID=9b24977d-8e67-4b0f-a55f-c0e886561b9d}             3
4 {Desc=PAGO POR USO DE ESTACIONAMIENTO,                   
   UUID=6FAEBEF1-2CCB-4DAB-BD2F-E765EC093F56}             4
5 {Desc=COPIA CARTA B&N 1-99 HOJAS,                        
   UUID=4D3F3204-3699-42DE-A97B-8D0F990B54A5}             5
6 {Desc=IMPRESION CARTA B&N 1-99 HOJAS,                    
   UUID=4D3F3204-3699-42DE-A97B-8D0F990B54A5}             6

我不认为这就是你想要的。每个事务应该是一组项目,而不是一个产品和一个UUID的组合。我强烈建议您阅读arules package vignette