Skip to contents

Return names of each node in tree based on searching tip labels through Global Names Resolver http://resolver.globalnames.org/ in NCBI.

Usage

searchTxnyms(tree, cache = FALSE, parent = NULL, clean = TRUE, infer = TRUE)

Arguments

tree

TreeMan object

cache

T/F, create a local cache of downloaded names?

parent

specify parent of all names to prevent false names

clean

T/F, ensure returned names contain no special characters?

infer

T/F, infer taxonyms for unfound nodes?

Details

For each node, all the descendants are searched, the taxonomic lineages returned and then searched to find the lowest shared name. All the tip labels are searched against a specified taxonomic database through the GNR and NCBI. (So far only tested with NCBI database.) Use the infer argument to ensure a taxonym is returned for all nodes. If infer is true, all nodes without an identifed taxonym adopt the taxonym of their parent. Will raise a warning if connection fails and will return NULL.

Examples

tree <- randTree(8)
new_tids <- c(
  "Gallus_gallus", "Aileuropoda_melanoleucha", "Ailurus_fulgens",
  "Rattus_rattus", "Mus_musculus", "Gorilla_gorilla", "Pan_trogoldytes", "Homo_sapiens"
)
tree <- setNdsID(tree, tree["tips"], new_tids)
nd_labels <- searchTxnyms(tree)
print(nd_labels)
#>                       n1                       n2                       n3 
#>                "Amniota"                "Amniota"                "Amniota" 
#>                       n4                       n5                       n6 
#>          "Boreoeutheria"          "Boreoeutheria"                "Amniota" 
#>                       n7            Gallus_gallus Aileuropoda_melanoleucha 
#>          "Boreoeutheria"                 "Gallus"            "Aileuropoda" 
#>          Ailurus_fulgens            Rattus_rattus             Mus_musculus 
#>                "Ailurus"                 "Rattus"                    "Mus" 
#>          Gorilla_gorilla          Pan_trogoldytes             Homo_sapiens 
#>                "Gorilla"                    "Pan"                   "Homo"