transactions-class {arules}R Documentation

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.

Objects from the Class

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

Slots

transactionInfo:
a data.frame with vectors of the same length as the number of transactions. Each vector can hold additional information, e.g., store transaction IDs or user IDs for each transaction.
data:
object of class ngCMatrix to store the binary incidence matrix (see itemMatrix class)
itemInfo:
a data.frame to store item labels (see itemMatrix class)

Extends

Class itemMatrix, directly.

Methods

coerce
signature(from = "matrix", to = "transactions"); produces a transactions data set from a binary incidence matrix. The row names are used as item labels and the column names are stores as transaction IDs.
coerce
signature(from = "list", to = "transactions"); produces a transactions data set from a list. The names of the items in the list are used as item labels and the item IDs and the incidence matrix is produced automatically.
coerce
signature(from = "transactions", to = "matrix")
coerce
signature(from = "transactions", to = "list")
coerce
signature(from = "data.frame", to = "transactions"); recodes the data frame containing only categorical variables (all have to be factors) into a binary transaction data set. The needed number of dummy items are automatically generated. The item labels are generated by concatenating variable names and levels with a "=". The variable names and levels are stored in the labels data frame as the components variables and levels. Note that NA in one of the levels is replaced by the string “NA”, i.e. the special meaning is lost.
coerce
signature(from = "transactions", to = "data.frame"); represents the set of transactions in a printable form as a data.frame. Note that this does not reverse coercion from data.frame to transactions.
labels
signature(x = "transactions"); returns the labels (item labels and transaction IDs) for the incidence matrix as a list of two vectors named items and transactionID.
transactionInfo<-
signature(x = "transactions"); replaces the transactionInfo data frame
transactionInfo
signature(x = "transactions"); returns transactionInfo
show
signature(object = "transactions")
summary
signature(object = "transactions")

See Also

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

Examples

## 1. example: 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)

## 2. example: 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

## example 3: creating transactions from data.frame
a_data.frame <- 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_data.frame

## coerce
trans3 <- as(a_data.frame, "transactions") 
image(trans3)

## 3. example creating from data.frame with NA
a_df <- sample(c(LETTERS[1:5], NA),10,TRUE)
a_df <- data.frame(X = a_df, Y = sample(a_df))

a_df

trans3 <- as(a_df, "transactions")
trans3
as(trans3, "data.frame")

[Package arules version 1.0-0 Index]