colnames
Row and Column Names
Description
Retrieve or set the row or column names of a matrix-like object.
Usage
rownames(x, do.NULL = TRUE, prefix = "row") rownames(x) <- value colnames(x, do.NULL = TRUE, prefix = "col") colnames(x) <- value
Arguments
x | a matrix-like R object, with at least two dimensions for |
do.NULL | logical. If |
prefix | for created names. |
value | a valid value for that component of |
Details
The extractor functions try to do something sensible for any matrix-like object x
. If the object has dimnames
the first component is used as the row names, and the second component (if any) is used for the column names. For a data frame, rownames
and colnames
eventually call row.names
and names
respectively, but the latter are preferred.
If do.NULL
is FALSE
, a character vector (of length NROW(x)
or NCOL(x)
) is returned in any case, prepending prefix
to simple numbers, if there are no dimnames or the corresponding component of the dimnames is NULL
.
The replacement methods for arrays/matrices coerce vector and factor values of value
to character, but do not dispatch methods for as.character
.
For a data frame, value
for rownames
should be a character vector of non-duplicated and non-missing names (this is enforced), and for colnames
a character vector of (preferably) unique syntactically-valid names. In both cases, value
will be coerced by as.character
, and setting colnames
will convert the row names to character.
Note
If the replacement versions are called on a matrix without any existing dimnames, they will add suitable dimnames. But constructions such as
rownames(x)[3] <- "c"
may not work unless x
already has dimnames, since this will create a length-3 value
from the NULL
value of rownames(x)
.
See Also
dimnames
, case.names
, variable.names
.
Examples
m0 <- matrix(NA, 4, 0) rownames(m0) m2 <- cbind(1, 1:4) colnames(m2, do.NULL = FALSE) colnames(m2) <- c("x","Y") rownames(m2) <- rownames(m2, do.NULL = FALSE, prefix = "Obs.") m2
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.