R: Update Labels

updateLabel {ape} | R Documentation

## Update Labels

### Description

This function changes labels (names or rownames) giving two vectors (`old` and `new`). It is a generic function with several methods as described below.

### Usage

    updateLabel(x, old, new, ...)
    ## S3 method for class 'character'
    updateLabel(x, old, new, exact = TRUE, ...)
    ## S3 method for class 'DNAbin'
    updateLabel(x, old, new, exact = TRUE, ...)
    ## S3 method for class 'AAbin'
    updateLabel(x, old, new, exact = TRUE, ...)
    ## S3 method for class 'phylo'
    updateLabel(x, old, new, exact = TRUE, nodes = FALSE, ...)
    ## S3 method for class 'evonet'
    updateLabel(x, old, new, exact = TRUE, nodes = FALSE, ...)
    ## S3 method for class 'data.frame'
    updateLabel(x, old, new, exact = TRUE, ...)
    ## S3 method for class 'matrix'
    updateLabel(x, old, new, exact = TRUE, ...)

### Arguments

`x` | an object where to change the labels.
`old, new` | two vectors of mode character (must be of the same length).
`exact` | a logical value (see details).
`nodes` | a logical value specifying whether to also update the node labels of the tree or network.
`...` | further arguments passed to and from methods.

### Details

This function can be used to change some of the labels (see examples) or all of them if their ordering is not sure.

If `exact = TRUE` (the default), the values in `old` are matched exactly with the labels; otherwise (`exact = FALSE`), the values in `old` are considered as regular expressions and searched in the labels with `grep`.

### Value

an object of the same class than `x`.

### Author(s)

Emmanuel Paradis

### See Also

`makeLabel`, `makeNodeLabel`, `mixedFontLabel`, `stripLabel`, `checkLabel`

### Examples

    ## Not run:
    ## the tree by Nyakatura & Bininda-Emonds (2012, BMC Biology)
    x <- "https://static-content.springer.com/esm/art"
    y <- "3A10.1186"
    z <- "2F1741-7007-10-12/MediaObjects/12915_2011_534_MOESM5_ESM.NEX"
    ## The commande below may not print correctly in HTML because of the
    ## percentage symbol; see the text or PDF help page.
    url <- paste(x, y, z, sep = "
    TC <- read.nexus(url)
    tr <- TC$carnivoreST_bestEstimate
    old <- c("Uncia_uncia", "Felis_manul", "Leopardus_jacobitus")
    new <- c("Panthera_uncia", "Otocolobus_manul", "Leopardus_jacobita")
    tr.updated <- updateLabel(tr, old, new)

    ## End(Not run)

    tr <- rtree(6)
    ## the order of the labels are randomized by this function
    old <- paste0("t", 1:6)
    new <- paste0("x", 1:6)
    updateLabel(tr, old, new)
    tr

[Package ape version 5.6-2 Index]