## example 1: creating transactions form a list
a_list <- list(
c("a","b","c"),
c("a","b"),
c("a","b","d"),
c("c","e"),
c("a","b","d","e")
)
## set transaction names
names(a_list) <- paste("Tr",c(1:5), sep = "")
a_list
## coerce into transactions
trans <- as(a_list, "transactions")
## analyze transactions
summary(trans)
image(trans)
## example 2: creating transactions from a matrix
a_matrix <- matrix(
c(1,1,1,0,0,
1,1,0,0,0,
1,1,0,1,0,
0,0,1,0,1,
1,1,0,1,1), ncol = 5)
## set dim names
dimnames(a_matrix) <- list(
c("a","b","c","d","e"),
paste("Tr",c(1:5), sep = ""))
a_matrix
## coerce
trans2 <- as(a_matrix, "transactions")
trans2
inspect(trans2)
## example 3: creating transactions from data.frame
a_df <- data.frame(
age = as.factor(c(6,8,7,6,9,5)),
grade = as.factor(c(1,3,1,1,4,1)))
## note: all attributes have to be factors
a_df
## coerce
trans3 <- as(a_df, "transactions")
image(trans3)
## example 4: Creating from data.frame with NA
a_df2 <- sample(c(LETTERS[1:5], NA),10,TRUE)
a_df2 <- data.frame(X = a_df2, Y = sample(a_df2))
a_df2
trans3 <- as(a_df2, "transactions")
trans3
as(trans3, "data.frame")
## example 5: creating transactions from a data.frame with
## transaction IDs and items
a_df3 <- data.frame(TID = c(1,1,2,2,2,3), item=c("a","b","a","b","c", "b"))
a_df3
trans4 <- as(split(a_df3[,"item"], a_df3[,"TID"]), "transactions")
trans4
LIST(trans4)
Run the code above in your browser using DataLab