Skip to contents

Use filter to subset the TidySet object. You can use activate with filter or use the specific function. The S3 method filters using all the information on the TidySet.

Usage

# S3 method for TidySet
filter(.data, ...)

filter_set(.data, ...)

filter_element(.data, ...)

filter_relation(.data, ...)

Arguments

.data

The TidySet object.

...

The logical predicates in terms of the variables of the sets.

Value

A TidySet object.

Examples

relations <- data.frame(
    sets = c(rep("a", 5), "b", rep("a2", 5), "b2"),
    elements = rep(letters[seq_len(6)], 2),
    fuzzy = runif(12),
    type = c(rep("Gene", 4), rep("lncRNA", 2))
)
TS <- tidySet(relations)
TS <- move_to(TS, from = "relations", to = "elements", column = "type")
filter(TS, elements == "a")
#>   elements sets      fuzzy type
#> 1        a    a 0.16304159 Gene
#> 2        a   a2 0.03609764 Gene
# Equivalent to filter_relation
filter(TS, elements == "a", sets == "a")
#>   elements sets     fuzzy type
#> 1        a    a 0.1630416 Gene
filter_relation(TS, elements == "a", sets == "a")
#>   elements sets     fuzzy type
#> 1        a    a 0.1630416 Gene
# Filter element
filter_element(TS, type == "Gene")
#>   elements sets      fuzzy type
#> 1        a    a 0.16304159 Gene
#> 2        b    a 0.37896569 Gene
#> 3        c    a 0.02200169 Gene
#> 4        d    a 0.94895449 Gene
#> 5        a   a2 0.03609764 Gene
#> 6        b   a2 0.62382900 Gene
#> 7        c   a2 0.35870947 Gene
#> 8        d   a2 0.25296311 Gene
# Filter sets and by property of elements simultaneously
filter(TS, sets == "b", type == "lncRNA")
#>   elements sets     fuzzy   type
#> 1        f    b 0.2873051 lncRNA
# Filter sets
filter_set(TS, sets == "b")
#>   elements sets     fuzzy   type
#> 1        f    b 0.2873051 lncRNA