Skip to contents

Subset to a specific number of samples.

Usage

# S3 method for rbiom
slice(biom, ..., clone = TRUE)

# S3 method for rbiom
slice_head(biom, ..., clone = TRUE)

# S3 method for rbiom
slice_tail(biom, ..., clone = TRUE)

# S3 method for rbiom
slice_min(biom, ..., clone = TRUE)

# S3 method for rbiom
slice_max(biom, ..., clone = TRUE)

# S3 method for rbiom
slice_sample(biom, ..., clone = TRUE)

Arguments

biom

An rbiom object, such as from as_rbiom().

...

Passed on to dplyr::slice().

clone

Create a copy of biom before modifying. If FALSE, biom is modified in place as a side-effect. See speed ups for use cases. Default: TRUE

Value

An rbiom object.

See also

Other transformations: mutate(), rarefy(), rarefy_cols(), subset(), with()

Examples

    library(rbiom)
    
    # The last 3 samples in the metadata table.
    biom <- slice_tail(hmp50, n = 3)
    biom$metadata
#> # A tibble: 3 × 5
#>   .sample   Age   BMI `Body Site`    Sex   
#>   <chr>   <dbl> <dbl> <fct>          <fct> 
#> 1 HMP48      24    29 Anterior nares Male  
#> 2 HMP49      21    22 Mid vagina     Female
#> 3 HMP50      31    20 Mid vagina     Female
    
    # The 3 oldest subjects sampled.
    biom <- slice_max(hmp50, Age, n = 3)
    biom$metadata
#> # A tibble: 3 × 5
#>   .sample   Age   BMI `Body Site`    Sex   
#>   <chr>   <dbl> <dbl> <fct>          <fct> 
#> 1 HMP34      40    27 Anterior nares Female
#> 2 HMP37      38    31 Mid vagina     Female
#> 3 HMP44      38    19 Mid vagina     Female
    
    # Pick 3 samples at random.
    biom <- slice_sample(hmp50, n = 3)
    biom$metadata
#> # A tibble: 3 × 5
#>   .sample   Age   BMI `Body Site`    Sex   
#>   <chr>   <dbl> <dbl> <fct>          <fct> 
#> 1 HMP46      27    19 Mid vagina     Female
#> 2 HMP32      28    27 Anterior nares Female
#> 3 HMP07      26    22 Buccal mucosa  Male