| itemCoding {arules} | R Documentation |
Provides the generic functions and the S4 methods to translate between the binary representation in the itemMatrix format (used in transactions, rules and itemsets), item labels and numeric item IDs (i.e., the column numbers in the binary representation).
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) decode(x, ...) ## S4 method for signature 'list' decode(x, itemLabels) ## S4 method for signature 'numeric' decode(x, itemLabels)
x |
a vector or a list of vectors of character strings
(for |
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 |
itemMatrix |
return an object of class |
match |
an |
... |
further arguments. |
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 itemMatrix object specified in match (i.e., the colums are reordered to match).
decode converts from the colun IDs used in the temMatrix representation to
item labels. decode is used by LIST.
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.
Michael Hahsler
LIST,
associations-class,
itemMatrix-class
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)
## Example 4: manually create 2 new transaction for the Adult data set
## Note: check itemLabels(Adult) to see the available labels for items
twoTransactions <- as(encode(list(
c("age=Young", "relationship=Unmarried"),
c("age=Senior")
), itemLabels = itemLabels(Adult)),
"transactions")
inspect(twoTransactions)
## Example 5: manually create a rule and calculate interest measures
aRule <- new("rules",
lhs = encode(list(c("age=Young", "relationship=Unmarried")),
itemLabels = itemLabels(Adult)),
rhs = encode(list(c("income=small")),
itemLabels = itemLabels(Adult))
)
quality(aRule) <- interestMeasure(aRule,
measure = c("support", "confidence", "lift"), transactions = Adult)
inspect(aRule)