This article is about taxonomy in R.
If you have any comments or suggestions for additions or improvements for this article submit an issue , or make some changes and submit a pull request . If you have an issue with one of the packages discussed below, please contact the maintainer of that package.
The following packages mostly deal with getting taxonomic data from the web onto your machine.
- taxize access to 20ish sources of taxonomic data sources. This is the place to go for most taxononomic data. taxize connects to a lot of data sources, and has consistent data outputs across the data sources. In addition, there’s operations that a user wants to do that are consistent across data sources, hiding the gory details of each data source. The only caveat is that if you have a really slow internet connection or you are dealing with A LOT of names, then you may want to use taxizedb.
- taxizedb came out of the
taxize package, with sights set on
helping people work with larger taxonomic data sets, or that perhaps
have infrequent access to the internet.
taxizedb downloads taxonomic
database dumps from many different providers - and makes it easy to
either query them with SQL or plug into
dplyrpackage to use that interface. taxizedb is starting to gain some of the functionality of taxize (e.g., get a taxonomic classification) but without having to do web requests, and doing large set of them much faster.
- ritis is a client for the Integrated Taxonomic Information System (ITIS) database of taxonomic data. ITIS is run by USGS in the US. It provides access to ITIS’s Solr web service (think for search), as well as their REST API more for fetching data for specific things by name or taxonomic ID.
- wikitaxa is a client for Wikipedia, Wikicommons, Wikspecies, and Wikidata taxonomic data. It is sometimes a bit odd since there is no interface specifically for taxonomic data besides Wikispecies, so you can end up with results that are not really taxonomic as well - but we do our best.
- worrms client for the WoRMS (World Register of Marine Species) API. Contains mostly taxonomic data, but also trait data.
- Taxonstand data from The Plant List. This package takes in plant taxon names, and downloads CSV files from The Plant List website, then presents those as a data.frame within R.
The taxa package defines a set of taxonomic objects (using S3 and R6) for both use cases where only taxonomic data is of interest, as well as when one has taxonomic data combined with other data on the taxa. taxa aims to form the basis upon which other taxonomic packages can be built, using common classes.
Manipulating/Parsing Taxonomic Names
The following packages don’t fetch taxonomic dat as those in the above section, but are focused around providing tooling around taxonomic names and data.
- rgnparser is a thin client for the Go based library gnparser from the GlobalNamesArchitecture project, which uses a Parsing Expression Grammar (PEG) to parse taxonomic names very quickly.
- metacoder specializes in metabarcoding. It can parse, manipulate, and visualize metabarcoding/taxonomic data. It leverages the taxa package ( GitHub )
- taxview is a in development package to help users summarize taxonomic data. Summarizing so far is taking form of getting taxonomic hierarchy data (via the taxize package) to facilitate taxonomic summaries. Visualization isn’t done yet.
Handling Taxonomic Name Lists
There are a few packages that deal specifically with handling species lists:
- splister - match species list against a reference list. Still in development
- NCBI taxonomic data is available from a number of R packages.
taxizedb provides access to local
version of NCBI’s taxonomy - in addition to taxonomies for other
data sources (see above). ncbit
makes NCBI taxonomic data locally available and searchable as an R
data.frame). The package comes with a version from 2013, but you can choose to update it; although updating it still seemed to use the old version from 2013. taxonomizr contains functions for assigning taxonomy to NCBI accession numbers and taxon IDs based on NCBI’s
- microclass has functions for assigning 16S sequence data to a taxonomic level in the tree-of-life for prokaryotes.
- taxa (core)
- taxize (core)