Skip to contents

This function retrieves synonyms for given species from a reference list.

Usage

rfs_get_synonyms(
  ref_list,
  species,
  all_species = FALSE,
  complete_names = FALSE
)

Arguments

ref_list

A data frame containing reference species data obtained using rFishStatus::rfs_get_species_list() function.

species

A character vector representing the species names to query.

all_species

A logical value indicating whether to return all synonyms (default is FALSE). If TRUE, returns all synonyms as a vector.

complete_names

A logical value indicating whether to return complete scientific names (default is FALSE) in all species list. If TRUE, returns full scientific names including author and year.

Value

A list where each element is named after a valid species and contains a character vector of its synonyms.

Examples

ref_list <- rFishStatus::rfs_get_species_list(
   rFishStatus::data_template_ref
)
#>  Creating species list from the input dataset.
#> Looking for uncertain species.
#> Looking for valid species.
#> Looking for all previous valid species names.
#> Filtering valid species.
#> Error in dplyr::filter(dplyr::mutate(dplyr::mutate(species_df, genus = stringr::str_extract(scientific_name,     "\\w+"), epithet = stringr::str_extract(scientific_name,     stringr::regex("(?<=\\s)[a-z]+(\\s(?![a-z]*\\.)[a-z]+)*"))),     species = paste(genus, epithet, sep = " "), year = as.numeric(stringr::str_extract(scientific_name_author,         "\\d{4}")), authors = stringr::str_replace(scientific_name_author,         paste0(" ", year), ""), scientific_name = stringr::str_replace_all(scientific_name,         "\\[.*?\\]", ""), scientific_name = stringr::str_trim(scientific_name,         side = "both"), status = dplyr::if_else(scientific_name %in%         valid_spp_list, "Valid", status), status = dplyr::if_else(scientific_name ==         valid_scientific_name, "Valid", status)), !(status ==     "Valid" & scientific_name != valid_scientific_name), year !=     "Invalid Number", year <= lubridate::year(Sys.Date()), !grepl("^\\w+ & \\w+ \\d{4}$",     scientific_name), !grepl("^[a-z]", scientific_name), !stringr::str_detect(scientific_name,     " \\[ref. "), !stringr::str_detect(scientific_name, "^\\["),     !stringr::str_detect(scientific_name, ";")):  In argument: `year <= lubridate::year(Sys.Date())`.
#> Caused by error in `loadNamespace()`:
#> ! there is no package called ‘lubridate’
species <- "Crenicichla britskii"
result <- rfs_get_synonyms(ref_list, species)
#> Error: object 'ref_list' not found
result
#> Error: object 'result' not found