This function performs unsupervised feature filtering. Features can be filtered based on abundance or prevalence. Additionally, unmapped reads may be removed.

filter.features <- function(siamcat, filter.method = "abundance",
    cutoff = 0.001, recomp.prop = FALSE, rm.unmapped = TRUE, verbose = 1)

Arguments

siamcat

an object of class siamcat-class

filter.method

method used for filtering the features, can be one of these: c('abundance', 'cum.abundance', 'prevalence'), defaults to 'abundance'

cutoff

float, abundace or prevalence cutoff, default to 0.001

recomp.prop

boolean, should relative abundances be recomputed?, defaults to FALSE

rm.unmapped

boolean, should unmapped reads be discarded?, defaults to TRUE

verbose

control output: 0 for no output at all, 1 for only information about progress and success, 2 for normal level of information and 3 for full debug information, defaults to 1

Value

siamcat an object of class siamcat-class

Details

This function filters the features in a siamcat-class object in a unsupervised manner.

The different filter methods work in the following way:

  • 'abundace' remove features whose abundance is never above the threshold value in any of the samples

  • 'cum.abundance' remove features with very low abundance in all samples i.e. ones that are never among the most abundant entities that collectively make up (1-cutoff) of the reads in any sample

  • 'prevalence' remove features with low prevalence across samples i.e. ones that are 0 (undetected) in more than (1-cutoff) proportion of samples.

Examples

# Example dataset data(siamcat_example) # since the whole pipeline has been run in the example data, the feature # were filtered already. siamcat_example <- reset.features(siamcat_example) # Simple examples siamcat_filtered <- filter.features(siamcat_example, filter.method='abundance', cutoff=1e-03)
#> Features successfully filtered