R: Item Coding - Handling Item Labels and Column IDs

itemCoding {arules} | R Documentation

## 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 signature 'list'
    decode(x, itemLabels)
    ## S4 method for signature 'numeric'
    decode(x, itemLabels)

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

    recode(x, ...)
    ## S4 method for signature '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.

### Author(s)

Michael Hahsler

### See Also

`LIST`, `associations-class`, `itemMatrix-class`

### Examples

    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)

[Package arules version 1.6-2 Index]