Aggregate species data to given taxonomic rank
Aggregate species data to given taxonomic rank
tax_agg(x, rank, db = "ncbi", messages = FALSE, ...) ## S3 method for class 'tax_agg' print(x, ...)
x |
Community data matrix. Taxa in columns, samples in rows. |
rank |
character; Taxonomic rank to aggregate by. |
db |
character; taxonomic API to use, 'ncbi, 'itis' or both, see
|
messages |
(logical) If FALSE (Default) suppress messages |
... |
tax_agg
aggregates (sum) taxa to a specific taxonomic level.
If a taxon is not found in the database (ITIS or NCBI) or the supplied taxon
is on higher taxonomic level this taxon is not aggregated.
A list of class tax_agg
with the following items:
x
Community data matrix with aggregated data.
by
A lookup-table showing which taxa were aggregated.
n_pre
Number of taxa before aggregation.
rank
Rank at which taxa have been aggregated.
## Not run: if (requireNamespace("vegan", quietly = TRUE)) { # use dune dataset data(dune, package='vegan') species <- c("Achillea millefolium", "Agrostis stolonifera", "Aira praecox", "Alopecurus geniculatus", "Anthoxanthum odoratum", "Bellis perennis", "Bromus hordeaceus", "Chenopodium album", "Cirsium arvense", "Comarum palustre", "Eleocharis palustris", "Elymus repens", "Empetrum nigrum", "Hypochaeris radicata", "Juncus articulatus", "Juncus bufonius", "Lolium perenne", "Plantago lanceolata", "Poa pratensis", "Poa trivialis", "Ranunculus flammula", "Rumex acetosa", "Sagina procumbens", "Salix repens", "Scorzoneroides autumnalis", "Trifolium pratense", "Trifolium repens", "Vicia lathyroides", "Brachythecium rutabulum", "Calliergonella cuspidata") colnames(dune) <- species # aggregate sample to families (agg <- tax_agg(dune, rank = 'family', db = 'ncbi')) # extract aggregated community data matrix for further usage agg$x # check which taxa have been aggregated agg$by } # A use case where there are different taxonomic levels in the same dataset spnames <- c('Puma','Ursus americanus','Ursidae') df <- data.frame(c(1,2,3), c(11,12,13), c(1,4,50)) names(df) <- spnames out <- tax_agg(x=df, rank = 'family', db='itis') out$x # You can input a matrix too mat <- matrix(c(1,2,3, 11,12,13), nrow = 2, ncol = 3, dimnames=list(NULL, c('Puma concolor','Ursus americanus','Ailuropoda melanoleuca'))) tax_agg(mat, rank = 'family', db='itis') ## End(Not run)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.