2016-06-28 16 views
0

我試圖從CSV中找到關聯規則我有以下列: 說明它是什麼被購買的描述和UUID這是每個事務的唯一ID來自個人。這意味着它可以是幾個Desc對於一個UUIDR Apriori單個列之間的函數關聯

我試圖找到的關聯規則的類型是,例如,如果我看到許多不同的UUID有兩個Desc,稱他們爲肉和啤酒。一條規則會顯示出:{肉} => {啤酒},它的支持,信心和提升。

的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

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

+0

是的,UUID應該是我的交易ID!我如何改變它,所以我可以有一個數據框,上面寫着 UUID說明 123肉類,啤酒 –

+0

可能做到這一點最簡單的方法是閱讀使用與設置爲單一格式read.transactions數據。閱讀包裝小插曲將真的幫助! –

+0

經過多次閱讀,我明白了,謝謝! @邁克爾哈斯勒 –