R: Subsetting Itemsets, Rules and Transactions

subset {arules} | R Documentation

## Subsetting Itemsets, Rules and Transactions

### Description

Provides the generic function `subset` and S4 methods to subset associations or transactions (itemMatrix) which meet certain conditions (e.g., contains certain items or satisfies a minimum lift).

### Usage

    subset(x, ...)

    ## S4 method for signature 'itemMatrix'
    subset(x, subset, ...)

    ## S4 method for signature 'itemsets'
    subset(x, subset, ...)

    ## S4 method for signature 'rules'
    subset(x, subset, ...)

    ## S4 method for signature 'itemMatrix'
    subset(x, subset, ...)

### Arguments

`x` | object to be subsetted.
`subset` | logical expression indicating elements to keep.
`...` | further arguments to be passed to or from other methods.

### Details

`subset` works on the rows/itemsets/rules of `x`. The expression given in `subset` will be evaluated using `x`, so the items (lhs/rhs/items) and the columns in the quality data.frame can be directly referred to by their names.

Important operators to select itemsets containing items specified by their labels are `%in%` (select itemsets matching any given item), `%ain%` (select only itemsets matching all given item), `%oin%` (select only itemsets matching only the given item), and `%pin%` (`%in%` with partial matching).

### Value

An object of the same class as `x` containing only the elements which satisfy the conditions.

### Author(s)

Michael Hahsler

### See Also

`%in%`, `%pin%`, `%ain%`, `%oin%`, `itemMatrix-class`, `itemsets-class`, `rules-class`, `transactions-class`

### Examples

    data("Adult")
    rules <- apriori(Adult)

    ## select all rules with item "marital-status=Never-married" in
    ## the right-hand-side and lift > 2
    rules.sub <- subset(rules, subset = rhs %in% "marital-status=Never-married"
        & lift > 2)

    ## use partial matching for all items corresponding to the variable
    ## "marital-status"
    rules.sub <- subset(rules, subset = rhs %pin% "marital-status=")

    ## select only rules with items "age=Young" and "workclass=Private" in
    ## the left-hand-side
    rules.sub <- subset(rules, subset = lhs %ain%
        c("age=Young", "workclass=Private"))

[Package arules version 1.7-2 Index]