arules (version 1.5-5)

itemCoding: Item Coding --- Handling Item Labels and Column IDs

Description

Provides the generic functions and the S4 methods for converting item labels into column IDs used in the binary matrix representation and vice versa.

decode converts from the numeric (column IDs) representation to readable item labels. decode is used by LIST.

encode converts from readable item labels to an itemMatrix using a given coding. With this method it is possible to create several compatible itemMatrix objects (i.e., use the same binary representation for items) from data.

recode recodes an itemMatrix object so its coding is compatible with another object or the matrix follows a certain order of items.

Usage

decode(x, …)
# S4 method for list
decode(x, itemLabels)
# S4 method for numeric
decode(x, itemLabels)

encode(x, …) # S4 method for list encode(x, itemLabels, itemMatrix = TRUE) # S4 method for character encode(x, itemLabels, itemMatrix = TRUE) # S4 method for numeric encode(x, itemLabels, itemMatrix = TRUE)

recode(x, …) # S4 method for itemMatrix recode(x, itemLabels = NULL, match = NULL)

Arguments

x

a vector or a list of vectors of character strings (for encode) or of numeric (for decode), or an object of class itemMatrix (for recode).

itemLabels

a vector of character strings used for coding where the position of an item label in the vector gives the item's column ID. The used itemLabels vector can be obtained from itemMatrix, transactions and associations by the method itemLabels.

itemMatrix

return an object of class itemMatrix otherwise an object of the same class as x is returned.

match

an itemMatrix object whose item coding x should match.

further arguments.

Value

recode always returns an object of class itemMatrix.

For encode with itemMatrix = TRUE an object of class itemMatrix is returned. Otherwise the result is of the same type as x, e.g., a list or a vector.

See Also

LIST, associations-class, itemMatrix-class

Examples

Run this code
# NOT RUN {
data("Adult")

## Example 1: Manual decoding
## get code
iLabels <- itemLabels(Adult)
head(iLabels)

## get undecoded list and decode in a second step
list <- LIST(Adult[1:5], decode = FALSE)
list

decode(list, itemLabels = iLabels)

## Example 2: Manually create an itemMatrix 
data <- list(
    c("income=small", "age=Young"),
    c("income=large", "age=Middle-aged")
    )

iM <- encode(data, iLabels)
iM

inspect(iM)

## use the itemMatrix to create transactions
as(iM, "transactions")


## Example 3: use recode
## select first 100 transactions and all education-related items
sub <- Adult[1:100, itemInfo(Adult)$variables ==  "education"]
itemLabels(sub)
image(sub)

## recode to match Adult again
sub.recoded <- recode(sub, match = Adult)
image(sub.recoded)
# }

Run the code above in your browser using DataCamp Workspace