Apriori en R

# Carga de librerías utilizadas
library("arules")
library("arulesViz")

# Cada vector t corresponderá a una transacción de compra. Una cesta.
t1 <- c("Lechuga","Atun","Tomate") 
t2 <- c("Lechuga","Arroz")
t3 <- c("Arroz","Cordero")
t4 <- c("Lechuga","Atun","Arroz")
t5 <- c("Lechuga","Atun","Pollo","Arroz"," Tomate")
t6 <- c("Atun","Pollo","Tomate") 
t7 <- c("Atun","Tomate","Pollo")

# Generamos una lista de transacciones 
a_list <- list(t1,t2,t3,t4,t5,t6,t7)

# Damos nombre a cada transacción
names(a_list) <- paste("tr",c(1:7), sep = "")

# Visualizamos el contenido de nuestra lista de transacciones
a_list

# Convertimos a objeto tipo transaction 
trans1 <- as(a_list, "transactions")
# Visualizamos estadásticas básicas sobre nuestro conjunto de transacciones
summary(trans1)

image(trans1)

# La generación de reglas se realiza fijando:
# Soporte: Proporción de transacciones en la base de datos que contiene cada conjunto de items.
# Confianza: Porcentaje de veces que se cumple la regla en la que se encuentran los items.
rules <- apriori(trans1, parameter = list(supp = 0.2, conf = 0.9, target = "rules"))

# Visualizamos el contenido del modelo de asociaciones generado
inspect(rules)

# Grafo visualizando las transacciones
plot(rules,method="graph",interactive=TRUE,shading=NA)