R: Get the Catalogue of Life ID from taxonomic names.

get_colid {taxize} | R Documentation

## Get the Catalogue of Life ID from taxonomic names.

### Description

Get the Catalogue of Life ID from taxonomic names.

### Usage

    get_colid(sciname, ask = TRUE, verbose = TRUE, rows = NA,
      kingdom = NULL, phylum = NULL, class = NULL, order = NULL,
      family = NULL, rank = NULL, ...)

    as.colid(x, check = TRUE)

    ## S3 method for class 'colid'
    as.colid(x, check = TRUE)

    ## S3 method for class 'character'
    as.colid(x, check = TRUE)

    ## S3 method for class 'list'
    as.colid(x, check = TRUE)

    ## S3 method for class 'data.frame'
    as.colid(x, check = TRUE)

    ## S3 method for class 'colid'
    as.data.frame(x, ...)

    get_colid_(sciname, verbose = TRUE, rows = NA)

### Arguments

`sciname` | character; scientific name.
`ask` | logical; should get_colid be run in interactive mode? If TRUE and more than one ID is found for the species, the user is asked for input. If FALSE NA is returned for multiple matches.
`verbose` | logical; If TRUE the actual taxon queried is printed on the console.
`rows` | numeric; Any number from 1 to infinity. If the default NA, all rows are considered. Note that this function still only gives back a colid class object with one to many identifiers. See `get_colid_` to get back all, or a subset, of the raw data that you are presented during the ask process.
`kingdom` | (character) A kingdom name. Optional. See `Filtering` below.
`phylum` | (character) A phylum (aka division) name. Optional. See `Filtering` below.
`class` | (character) A class name. Optional. See `Filtering` below.
`order` | (character) An order name. Optional. See `Filtering` below.
`family` | (character) A family name. Optional. See `Filtering` below.
`rank` | (character) A taxonomic rank name. See `rank_ref` for possible options. Though note that some data sources use atypical ranks, so inspect the data itself for options. Optional. See `Filtering` below.
`...` | Ignored
`x` | Input to as.colid
`check` | logical; Check if ID matches any existing on the DB, only used in `as.colid`

### Value

A vector of taxonomic identifiers as an S3 class. If a taxon is not found an `NA` is given. If more than one identifier is found the function asks for user input if `ask = TRUE`, otherwise returns `NA`. If `ask=FALSE` and `rows` does not equal `NA`, then a data.frame is given back, but not of the uid class, which you can't pass on to other functions as you normally can.

See `get_id_details` for further details including attributes and exceptions

### Filtering

The parameters `kingdom`, `phylum`, `class`, `order`, `family`, and `rank` are not used in the search to the data provider, but are used in filtering the data down to a subset that is closer to the target you want. For all these parameters, you can use regex strings since we use `grep` internally to match. Filtering narrows down to the set that matches your query, and removes the rest.

### Author(s)

Scott Chamberlain, myrmecocystus@gmail.com

### See Also

`classification`

Other taxonomic-ids: `get_boldid`, `get_eolid`, `get_gbifid`, `get_ids`, `get_iucn`, `get_natservid`, `get_nbnid`, `get_tolid`, `get_tpsid`, `get_tsn`, `get_uid`, `get_wiki`, `get_wormsid`

### Examples

    ## Not run:
    get_colid(sciname='Poa annua')
    get_colid(sciname='Pinus contorta')
    get_colid(sciname='Puma concolor')
    # get_colid(sciname="Abudefduf saxatilis")

    get_colid(c("Poa annua", "Pinus contorta"))

    # specify rows to limit choices available
    get_colid(sciname='Poa annua')
    get_colid(sciname='Poa annua', rows=1)
    get_colid(sciname='Poa annua', rows=2)
    get_colid(sciname='Poa annua', rows=1:2)

    # When not found
    get_colid(sciname="uaudnadndj")
    get_colid(c("Chironomus riparius", "uaudnadndj"))

    # Narrow down results to a division or rank, or both
    ## Satyrium example
    ### Results w/o narrowing
    get_colid("Satyrium")
    ### w/ division
    get_colid("Satyrium", kingdom = "Plantae")
    get_colid("Satyrium", kingdom = "Animalia")

    ## Rank example
    get_colid("Poa")
    get_colid("Poa", kingdom = "Plantae")
    get_colid("Poa", kingdom = "Animalia")

    # Fuzzy filter on any filtering fields
    ## uses grep on the inside
    get_colid("Satyrium", kingdom = "p")

    # Convert a uid without class information to a uid class
    as.colid(get_colid("Chironomus riparius")) # already a uid, returns the same
    as.colid(get_colid(c("Chironomus riparius","Pinus contorta"))) # same
    as.colid("714831352ad94741e4321eccdeb29f58") # character
    # character vector, length > 1
    as.colid(c("714831352ad94741e4321eccdeb29f58", "3b35900f74ff6e4b073ddb95c32b1f8d"))
    # list, either numeric or character
    as.colid(list("714831352ad94741e4321eccdeb29f58", "3b35900f74ff6e4b073ddb95c32b1f8d"))
    ## dont check, much faster
    as.colid("714831352ad94741e4321eccdeb29f58", check=FALSE)
    as.colid(c("714831352ad94741e4321eccdeb29f58", "3b35900f74ff6e4b073ddb95c32b1f8d"),
     check=FALSE)
    as.colid(list("714831352ad94741e4321eccdeb29f58", "3b35900f74ff6e4b073ddb95c32b1f8d"),
     check=FALSE)

    (out <- as.colid(c("714831352ad94741e4321eccdeb29f58", "3b35900f74ff6e4b073ddb95c32b1f8d")))
    data.frame(out)
    as.colid( data.frame(out) )

    # Get all data back
    get_colid_("Poa annua")
    get_colid_("Poa annua", rows=2)
    get_colid_("Poa annua", rows=1:2)
    get_colid_(c("asdfadfasd","Pinus contorta"))

    get_colid(sciname="Andropadus nigriceps fusciceps", rows=1)

    # use curl options
    library("httr")
    get_colid("Quercus douglasii", config=verbose())
    bb <- get_colid("Quercus douglasii", config=progress())

    ## End(Not run)

[Package taxize version 0.9.0 Index]