genefilter
function for microarray filtering,
but is used for filtering OTUs from phyloseq objects.
It applies an arbitrary set of functions ---
as a function list, for instance, created by filterfun
---
as across-sample criteria, one OTU at a time.
It takes as input a phyloseq object,
and returns a logical vector
indicating whether or not each OTU passed the criteria.
Alternatively, if the "prune"
option is set to FALSE
,
it returns the already-trimmed version of the phyloseq object.filter_taxa(physeq, flist, prune=FALSE)
phyloseq-class
object that you
want to trim/filter.genefilter
-package.FALSE
. If TRUE
, then
the function returns the pruned phyloseq-class
object, rather
than the logical vector of taxa that passed the filter.physeq
.
This can be provided directly to prune_taxa
as first argument.
Alternatively, if prune==TRUE
, the pruned phyloseq-class
object is returned instead.filterfun
,
genefilter_sample
,
filterfun_sample
data("enterotype")
require("genefilter")
flist <- filterfun(kOverA(5, 2e-05))
ent.logi <- filter_taxa(enterotype, flist)
ent.trim <- filter_taxa(enterotype, flist, TRUE)
identical(ent.trim, prune_taxa(ent.logi, enterotype))
identical(sum(ent.logi), ntaxa(ent.trim))
filter_taxa(enterotype, flist, TRUE)
Run the code above in your browser using DataLab