Description

Usage

Arguments

Details

names is a generic accessor function, and names<- is a
generic replacement function. The default methods get and set
the "names" attribute of a vector (including a list) or
pairlist.

For an environmentenv, names(env) gives
the names of the corresponding list, i.e.,
names(as.list(env, all.names = TRUE)) which are also given by
ls(env, all.names = TRUE, sorted = FALSE). If the
environment is used as a hash table, names(env) are its
“keys”.

If value is shorter than x, it is extended by character
NAs to the length of x.

It is possible to update just part of the names attribute via the
general rules: see the examples. This works because the expression
there is evaluated as z <- "names<-"(z, "[<-"(names(z), 3, "c2")).

The name "" is special: it is used to indicate that there is no
name associated with an element of a (atomic or generic) vector.
Subscripting by "" will match nothing (not even elements which
have no name).

A name can be character NA, but such a name will never be
matched and is likely to lead to confusion.

Both are primitive functions.

Value

For names, NULL or a character vector of the same length
as x. (NULL is given if the object has no names,
including for objects of types which cannot have names.) For an
environment, the length is the number of objects in the environment
but the order of the names is arbitrary.

For names<-, the updated object. (Note that the value of
names(x) <- value is that of the assignment, value, not
the return value from the left-hand side.)

Note

For vectors, the names are one of the attributes with
restrictions on the possible values. For pairlists, the names are the
tags and converted to and from a character vector.

For a one-dimensional array the names attribute really is
dimnames[[1]].