来自arules的规则的后处理

时间:2015-04-01 14:15:27

标签: r apriori arules

有没有办法在arules包中apriori生成的单个规则中如何使用多个单个变量?

考虑以下示例:

df <- read.table(header = TRUE, text = '
V1 V2 V3
a d x 
a d x           
a d y        
b d x       
b d x       
b d y
a e y
a e y
a e x
b e y
b e y
b e x
c d y
')

library(arules)    
rules <- apriori(df, 
                 parameter = list(support= 0.001, confidence = 0.5, target = "rules"),
                 appearance = list(rhs=c("V3=x"), default = 'lhs'))
inspect(sort(rules, decreasing = TRUE, by = "confidence"))

输出&GT;

  lhs       rhs      support confidence     lift
1 {V1=a,                                        
   V2=d} => {V3=x} 0.1538462  0.6666667 1.444444
2 {V1=b,                                        
   V2=d} => {V3=x} 0.1538462  0.6666667 1.444444
3 {V2=d} => {V3=x} 0.3076923  0.5714286 1.238095
4 {V1=a} => {V3=x} 0.2307692  0.5000000 1.083333
5 {V1=b} => {V3=x} 0.2307692  0.5000000 1.083333

在此示例中,如果我获得规则{V1=a,b,V2=d}会很有帮助。其他一些工具(例如LISp-Miner)可以生成使用多个级别变量的规则。

1 个答案:

答案 0 :(得分:1)

arules遵循标准关联规则挖掘文献,并且不以这种方式聚合项目。项目集包含或不包含项目。因此,除非您手动添加人工项V1=aORb,否则您将遇到两条规则。