metacoder (version 0.1.2)

sample_frac_taxa: Sample a proportion of taxa from taxmap

Description

Randomly sample some propoortion of taxa from a taxmap object. Weights can be specified for taxa or the observations assigned to them. See sample_frac for the inspiration for this function.

Usage

sample_frac_taxa(.data, size = 1, taxon_weight = NULL, obs_weight = NULL, use_subtaxa = TRUE, collapse_func = mean, ...)

Arguments

.data
(taxmap) The object to sample from.
size
(numeric of length 1) The proportion of taxa to sample.
taxon_weight
(numeric) Non-negative sampling weights of each taxon. The expression given is evaluated in the context of taxon_data. In other words, any column name that appears in taxon_data(.data) can be used as if it was a vector on its own. If obs_weight is also specified, the two weights are multiplied (after obs_weight for each taxon is calculated).
obs_weight
(numeric) Sampling weights of each observation. The weights for each observation assigned to a given taxon are supplied to collapse_func to get the taxon weight. If use_subtaxa is TRUE then the observations assigned to every subtaxa are also used. The expression given is evaluated in the context of obs_data. In other words, any column name that appears in obs_data(.data) can be used as if it was a vector on its own. If taxon_weight is also specified, the two weights are multiplied (after obs_weight for each observation is calculated).
use_subtaxa
(logical of length 1) Affects how the obs_weight option is used. If TRUE, the weights for each taxon in an observation's classification are multiplied to get the observation weight. Otherwise, just the taxonomic level the observation is assign to it considered.
collapse_func
(function of length 1) If taxon_weight is used and supertaxa is TRUE, the weights for each taxon in an observation's classification are supplied to collapse_func to get the observation weight. This function should take numeric vector and return a single number.
...
Additional options are passed to filter_taxa.

Value

An object of type taxmap

See Also

Other dplyr-like functions: arrange_obs, arrange_taxa, filter_obs, filter_taxa, mutate_obs, mutate_taxa, sample_frac_obs, sample_n_obs, sample_n_taxa, select_obs, select_taxa, transmute_obs, transmute_taxa

Examples

Run this code
# subsample taxa, preserving shared supertaxa
sample_frac_taxa(unite_ex_data_3, 0.1, supertaxa = TRUE)
# subsample taxa using weights, preserving subtaxa
sample_frac_taxa(unite_ex_data_3, 0.01, subtaxa = TRUE,
                 taxon_weight = ifelse(unite_rank == "g" & n_subtaxa > 3, 1, 0))
              

Run the code above in your browser using DataCamp Workspace