|
| 1 | +library(arules) |
| 2 | +library(ggplot2) |
| 3 | +library(arulesViz) |
| 4 | +library(dplyr) |
| 5 | + |
| 6 | +setwd("E:/data analytics/datasets/") |
| 7 | +lastfm = read.csv("lastfm.csv", header = TRUE, stringsAsFactors=FALSE) |
| 8 | +dim(lastfm) |
| 9 | +str(lastfm) |
| 10 | + |
| 11 | +ds = lastfm %>% select(user, artist) %>% unique() |
| 12 | +dim(ds) |
| 13 | +head(ds) |
| 14 | + |
| 15 | +trans = as(split(ds$artist, ds$user), "transactions") |
| 16 | +trans |
| 17 | +inspect(trans[1:5]) |
| 18 | +itemFrequency(trans, type="absolute") |
| 19 | +itemFrequencyPlot(trans, support=0.075, type="absolute") |
| 20 | +itemFrequency(trans) |
| 21 | +itemFrequencyPlot(trans, support=0.075) |
| 22 | + |
| 23 | + |
| 24 | +rules = apriori(trans, parameter=list(support=0.01, confidence=0.5)) |
| 25 | +inspect(rules) |
| 26 | +sort(rules, by="confidence", decreasing=TRUE) |
| 27 | + |
| 28 | +rules=apriori(trans, parameter=list(supp=0.001,conf = 0.08), |
| 29 | + appearance = list(default="lhs",rhs="coldplay"), |
| 30 | + control = list(verbose=F)) |
| 31 | +rules=sort(rules, decreasing=TRUE,by="confidence") |
| 32 | +inspect(rules[1:5]) |
| 33 | + |
| 34 | +rules=apriori(trans, parameter=list(supp=0.001,conf = 0.15,minlen=2), |
| 35 | + appearance = list(default="rhs",lhs="beck"), |
| 36 | + control = list(verbose=F)) |
| 37 | +rules=sort(rules, decreasing=TRUE,by="confidence") |
| 38 | +inspect(rules[1:5]) |
| 39 | + |
| 40 | +plot(rules,method="graph",interactive=TRUE,shading=NA) |
| 41 | + |
| 42 | +inspect(subset(rules, subset=lift>8)) |
| 43 | + |
| 44 | +inspect(sort(subset(rules, subset=lift>8), by="confidence")) |
0 commit comments