Learn R Programming

arules (version 1.0-12)

transactions-class: Class ``transactions'' --- Binary Incidence Matrix for Transactions

Description

The transactions class represents transaction data used for mining itemsets or rules. It is a direct extension of class itemMatrix to store a binary incidence matrix, item labels, and optionally transaction IDs and user IDs.

Arguments

Objects from the Class

Objects are created by coercion from objects of other classes (see Examples section) or by calls of the form new("transactions", ...).

Extends

Class itemMatrix, directly.

See Also

[-methods, LIST, write, c, image, inspect, read.transactions, random.transactions, sets, itemMatrix-class

Examples

Run this code
## 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