R: Get the BOLD (Barcode of Life) code for a search term.

get_boldid {taxize} | R Documentation

## Get the BOLD (Barcode of Life) code for a search term.

### Description

Get the BOLD (Barcode of Life) code for a search term.

### Usage

    get_boldid(searchterm, fuzzy = FALSE, dataTypes = "basic",
      includeTree = FALSE, ask = TRUE, verbose = TRUE, rows = NA,
      rank = NULL, division = NULL, parent = NULL, ...)

    as.boldid(x, check = TRUE)

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

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

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

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

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

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

    get_boldid_(searchterm, verbose = TRUE, fuzzy = FALSE,
      dataTypes = "basic", includeTree = FALSE, rows = NA, ...)

### Arguments

`searchterm` | character; A vector of common or scientific names.
`fuzzy` | (logical) Whether to use fuzzy search or not (default: FALSE).
`dataTypes` | (character) Specifies the datatypes that will be returned. See `bold_search` for options.
`includeTree` | (logical) If TRUE (default: FALSE), returns a list containing information for parent taxa as well as the specified taxon.
`ask` | logical; should get_tsn be run in interactive mode? If TRUE and more than one TSN is found for teh species, the user is asked for input. If FALSE NA is returned for multiple matches.
`verbose` | logical; should progress be printed?
`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 boldid class object with one to many identifiers. See `get_boldid_` to get back all, or a subset, of the raw data that you are presented during the ask process.
`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.
`division` | (character) A division (aka phylum) name. Optional. See `Filtering` below.
`parent` | (character) A parent name (i.e., the parent of the target search taxon). Optional. See `Filtering` below.
`...` | Curl options passed on to `GET`
`x` | Input to `as.boldid`
`check` | logical; Check if ID matches any existing on the DB, only used in `as.boldid`

### 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 `division`, `parent`, 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.

### See Also

`classification`

Other taxonomic-ids: `get_colid`, `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_boldid(searchterm = "Agapostemon")
    get_boldid(searchterm = "Chironomus riparius")
    get_boldid(c("Chironomus riparius","Quercus douglasii"))
    splist <- names_list('species')
    get_boldid(splist, verbose=FALSE)

    # Fuzzy searching
    get_boldid(searchterm="Osmi", fuzzy=TRUE)

    # Get back a subset
    get_boldid(searchterm="Osmi", fuzzy=TRUE, rows = 1)
    get_boldid(searchterm="Osmi", fuzzy=TRUE, rows = 1:10)
    get_boldid(searchterm=c("Osmi","Aga"), fuzzy=TRUE, rows = 1)
    get_boldid(searchterm=c("Osmi","Aga"), fuzzy=TRUE, rows = 1:3)

    # When not found
    get_boldid("howdy")
    get_boldid(c("Chironomus riparius", "howdy"))
    get_boldid('Epicordulia princeps')
    get_boldid('Arigomphus furcifer')
    get_boldid("Cordulegaster erronea")
    get_boldid("Nasiaeshna pentacantha")

    # Narrow down results to a division or rank, or both
    ## Satyrium example
    ### Results w/o narrowing
    get_boldid("Satyrium")
    ### w/ phylum
    get_boldid("Satyrium", division = "Plants")
    get_boldid("Satyrium", division = "Animals")

    ## Rank example
    get_boldid("Osmia", fuzzy = TRUE)
    get_boldid("Osmia", fuzzy = TRUE, rank = "genus")

    # Fuzzy filter on any filtering fields
    ## uses grep on the inside
    get_boldid("Satyrium", division = "anim")
    get_boldid("Aga", fuzzy = TRUE, parent = "*idae")

    # Convert a boldid without class information to a boldid class
    as.boldid(get_boldid("Agapostemon")) # already a boldid, returns the same
    as.boldid(get_boldid(c("Agapostemon","Quercus douglasii"))) # same
    as.boldid(1973) # numeric
    as.boldid(c(1973,101009,98597)) # numeric vector, length > 1
    as.boldid("1973") # character
    as.boldid(c("1973","101009","98597")) # character vector, length > 1
    as.boldid(list("1973","101009","98597")) # list, either numeric or character
    ## dont check, much faster
    as.boldid("1973", check=FALSE)
    as.boldid(1973, check=FALSE)
    as.boldid(c("1973","101009","98597"), check=FALSE)
    as.boldid(list("1973","101009","98597"), check=FALSE)

    (out <- as.boldid(c(1973,101009,98597)))
    data.frame(out)
    as.boldid( data.frame(out) )

    # Get all data back
    get_boldid_("Osmia", fuzzy=TRUE, rows=1:5)
    get_boldid_("Osmia", fuzzy=TRUE, rows=1)
    get_boldid_(c("Osmi","Aga"), fuzzy=TRUE, rows = 1:3)

    ## End(Not run)

[Package taxize version 0.9.0 Index]