Learn R Programming

metacoder (version 0.3.7)

supertaxa_apply: Apply function to supertaxa of each taxon

Description

Apply a function to the supertaxa for each taxon. This is similar to using [supertaxa()] with [lapply()] or [sapply()].


obj$supertaxa_apply(func, subset = NULL, recursive = TRUE,
  simplify = FALSE, include_input = FALSE, value = "taxon_indexes",
  na = FALSE, ...)
supertaxa_apply(obj, func, subset = NULL, recursive = TRUE,
  simplify = FALSE, include_input = FALSE, value = "taxon_indexes",
  na = FALSE, ....)

Arguments

obj

The [taxonomy()] or [taxmap()] object containing taxon information to be queried.

func

(`function`) The function to apply.

subset

Taxon IDs, TRUE/FALSE vector, or taxon indexes of taxa to use. Default: All taxa in `obj` will be used. Any variable name that appears in [all_names()] can be used as if it was a vector on its own.

recursive

(`logical` or `numeric`) If `FALSE`, only return the supertaxa one rank above the target taxa. If `TRUE`, return all the supertaxa of every supertaxa, etc. Positive numbers indicate the number of recursions (i.e. number of ranks above the target taxon to return). `1` is equivalent to `FALSE`. Negative numbers are equivalent to `TRUE`.

simplify

(`logical`) If `TRUE`, then combine all the results into a single vector of unique values.

include_input

(`logical`) If `TRUE`, the input taxa are included in the output

value

What data to give to the function. Any result of `all_names(obj)` can be used, but it usually only makes sense to use data that has an associated taxon id.

na

(`logical`) If `TRUE`, return `NA` where information is not available.

...

Extra arguments are passed to the function.

Examples

Run this code
# Get number of supertaxa that each taxon is contained in
supertaxa_apply(ex_taxmap, length)

# Get classifications for each taxon
# Note; this can be done with `classifications()` easier
supertaxa_apply(ex_taxmap, paste, collapse = ";", include_input = TRUE,
                value = "taxon_names")

Run the code above in your browser using DataLab