transactions-class          package:arules          R Documentation

_C_l_a_s_s "_t_r_a_n_s_a_c_t_i_o_n_s" - _B_i_n_a_r_y _I_n_c_i_d_e_n_c_e _M_a_t_r_i_x _f_o_r
_T_r_a_n_s_a_c_t_i_o_n_s

_D_e_s_c_r_i_p_t_i_o_n:

     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.

_O_b_j_e_c_t_s _f_r_o_m _t_h_e _C_l_a_s_s:

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

_S_l_o_t_s:

     '_t_r_a_n_s_a_c_t_i_o_n_I_n_f_o': 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.

     '_d_a_t_a': object of class 'ngCMatrix' to store the binary incidence
          matrix (see 'itemMatrix' class) 

     '_i_t_e_m_I_n_f_o': a data.frame to store  item labels (see 'itemMatrix'
          class)

_E_x_t_e_n_d_s:

     Class 'itemMatrix', directly.

_M_e_t_h_o_d_s:

     _c_o_e_r_c_e '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.

     _c_o_e_r_c_e '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.

     _c_o_e_r_c_e 'signature(from = "transactions", to = "matrix")'

     _c_o_e_r_c_e 'signature(from = "transactions", to = "list")'

     _c_o_e_r_c_e '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.

     _c_o_e_r_c_e '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'.

     _l_a_b_e_l_s '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'.

     _t_r_a_n_s_a_c_t_i_o_n_I_n_f_o<- 'signature(x = "transactions")'; replaces the
          transactionInfo data frame

     _t_r_a_n_s_a_c_t_i_o_n_I_n_f_o 'signature(x = "transactions")'; returns
          transactionInfo

     _s_h_o_w 'signature(object = "transactions")'

     _s_u_m_m_a_r_y 'signature(object = "transactions")'

_S_e_e _A_l_s_o:

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

_E_x_a_m_p_l_e_s:

     ## 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")

