0
我有一組事務包含來自兩個類(A和B)的項目,並且我希望生成封閉關聯規則,其中前提條件僅包含來自A類的項目以及來自B類的後續項目例如,我尋找形式的規則:R arules:生成關聯關係。有外觀限制的規則
- {A1} => {B2}
- {A2,A3} => {B1}
- {A3,A1} => {B3}
我可以很容易地獨立完成其中任何一項,但是無法用這兩個約束來生成規則。
rules <- apriori(
trans,
parameter = list(minlen=2, maxlen=4),
appearance = list(lhs = class_A, rhs = class_B, default='none')
)
上面的代碼生成的規則符合外觀約束,但沒有關閉。我一直無法找到apriori
的參數來生成封閉規則。
我能夠使用以下代碼生成封閉規則,但在傳遞ruleInduction
外觀參數時失敗。
closed_is <- apriori(
trans,
parameter = list(minlen=2, maxlen=4, target="closed frequent itemsets"),
)
closed_rules <- ruleInduction(
closed_is,
transactions = trans
)
我試圖使用subset
產生接近規則後應用所需的LHS/RHS類約束,但一直未果。例如,
target_lhs_rules <- subset(closed_rules, subset = lhs %in% as.character(class_A))
給所有的從A級至少有一個項目的規則,但不是唯一的A級。因爲在A級的所有項目
target_lhs_rules <- subset(closed_rules, subset = lhs %ain% as.character(class_A))
結果中沒有規則,不會出現在任何規則中。
當然arules
包涵蓋了這種情況,但我一直沒能找到辦法。任何幫助克服這一點將不勝感激!