当我尝试使用arules对事务进行子集时,它返回整个事务数据库/项矩阵。
我引用了以下帖子,但它似乎无法正常运行:R arules - subset of transactions that match a rule
关于我哪里出错的任何提示?
require(arules)
data("Adult")
## Mine association rules.
rules <- apriori(Adult,
parameter = list(supp = 0.5, conf = 0.9, target = "rules", minlen = 2))
summary(rules)
sub_rules <- rules[1]
inspect(sub_rules)
sub_trans <- subset(Adult, items %in% lhs(sub_rules))
答案 0 :(得分:1)
我认为你的代码应该可行,这是arules中的一个bug。现在您可以执行以下操作:
subset(Adult, items %in% unlist(as(lhs(sub_rules), "list")))
它基本上将LHS中的项目转换为字符串。
它将在下一个版本中修复(arules_1.5-5)。