2015-05-17 43 views
0

我使用這個示例數據集在R中運行apriori函數。R apriori()沒有顯示預期的輸出

Bread Milk  
Bread Diapers Beer Eggs 
Milk Diapers Beer Cola 
Bread Milk Diapers Beer 
Bread Milk Diapers Cola 

正如我所看到的,對於規則{牛奶,尿布}的支持 - > {}啤酒爲0.4(2/5)和置信度爲2/3 0.67。

但是,當我運行下面的命令,我得到的輸出不顯示規則{牛奶,尿布} - > {啤酒}。

rules <- apriori(a, parameter = list(supp = 0.3, conf = 0.6)) 

我得到的輸出如下。這裏沒有我看到預期的規則。此外,我還會看到籃子項目以及V1,V2,它們是數據框的列名稱。

請看這裏有什麼問題。

> inspect(rules) 
    lhs    rhs   support confidence lift 
    1 {}   => {V2=Milk}  0.6  0.60 1.0 
    2 {}   => {V1=Bread}  0.8  0.80 1.0 
    3 {V2=Diapers} => {V3=Beer}  0.4  1.00 2.5 
    4 {V3=Beer} => {V2=Diapers}  0.4  1.00 2.5 
    5 {V3=Diapers} => {V2=Milk}  0.4  1.00 1.7 
    6 {V2=Milk} => {V3=Diapers}  0.4  0.67 1.7 
    7 {V3=Diapers} => {V1=Bread}  0.4  1.00 1.2 
    8 {V2=Milk} => {V1=Bread}  0.6  1.00 1.2 
    9 {V1=Bread} => {V2=Milk}  0.6  0.75 1.2 
    10 {V2=Milk,           
     V3=Diapers} => {V1=Bread}  0.4  1.00 1.2 
    11 {V1=Bread,           
     V3=Diapers} => {V2=Milk}  0.4  1.00 1.7 
    12 {V1=Bread,           
     V2=Milk} => {V3=Diapers}  0.4  0.67 1.7 

回答

0

apriori()將事務作爲輸入。由於我的輸入是一個數據框,我得到了V1,V2和apriori似乎在做基於列位置的匹配。

當你在籃下的形式的數據幀轉換成一個交易與

trans = read.transactions("data/rules_samp.csv", format = "basket", sep=",");