Market Basket Analysis in R
Christopher Bruffaerts
Statistician
Interactive rules
rules_html = plot(rules, method = "graph",
engine = "htmlwidget")
rules_html
Save the HTML widget
library(htmlwidgets)
saveWidget(rules_html, file = "rules_grocery.html")
Select the item Bread
Select Rule 3
Sort rules by confidence
top4subRules =
head(sort(rules, by = "confidence"), 4)
inspect(top4subRules)
lhs rhs support confidence lift count
[1] {Bread} => {Butter} 0.4285714 1.00 1.1666667 3
[2] {Wine} => {Butter} 0.5714286 0.80 0.9333333 4
[3] {Cheese} => {Wine} 0.4285714 0.75 1.0500000 3
[4] {Cheese} => {Butter} 0.4285714 0.75 0.8750000 3
Plot high-confidence rules
plot(top4subRules, method = "graph", engine = "htmlwidget")
Inspect cheesy rules
C_rules =
apriori(data = data_trx,
parameter = list(supp = 3/7,
conf = 0.2,
minlen = 2),
appearance = list(rhs = "Cheese"))
inspect(C_rules)
lhs rhs support confidence lift count
[1] {Wine} => {Cheese} 0.4285714 0.6 1.050 3
[2] {Butter} => {Cheese} 0.4285714 0.5 0.875 3
Plot cheesy rules
plot(C_rules, method = "graph", engine = "htmlwidget")
Saving your graph
saveAsGraph(rules, file = "rules.graphml")
Market Basket Analysis in R