itemFrequency двух предметов вместе
Предположим, что у меня есть следующие транзакции:
B C A F H
F E C H
E D B
A C H F
E F A
D H B
E C F B D
A H C E
G A E
B H E
Я читаю транзакции в R с помощью функции read.transactions библиотеки arules. Мне нужно частоту конкретных предметов. Например, для "А".
Я могу сделать это с помощью следующего кода R:
itemFrequency(transactions)["A"]
который дает частоту A. Теперь, я хочу частоту, например, "A" и "C" вместе, а затем "A", а не "C". Как я могу сделать это с функцией частоты элемента (это может быть любая другая функция, но мне нужен один номер (частота) в качестве выхода)
1 ответ
Решение
Это сложно!
# add !C (complement of C)
> transactions <- addComplement(transactions, labels = "C")
# manually create itemsets {A,C} and {A,!C}
> itemsets <- encode(list(c("A", "C"), c("A", "!C")), itemLabels(transactions))
> inspect(itemsets)
items
1 {A,C}
2 {A,!C}
# calculate support
> support(itemsets, transactions)
[1] 0.2727273 0.1818182