我使用此样本数据集在R中运行apriori函数。
Bread Milk
Bread Diapers Beer Eggs
Milk Diapers Beer Cola
Bread Milk Diapers Beer
Bread Milk Diapers Cola
正如我在此处所见,对规则{Milk,Diaper}的支持 - > {Beer}为0.4(2/5),置信度为2/3 0.67。
但是当我运行以下命令时,我得到的输出没有显示规则{Milk,Diaper} - > {啤酒}。
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 :(得分:0)
apriori()将事务作为输入。由于我的输入是一个数据帧,我得到V1,V2和apriori似乎正在进行基于列位置的匹配。
如果您有一个篮子形式的数据框,请将其转换为带有
的交易trans = read.transactions("data/rules_samp.csv", format = "basket", sep=",");