data.matrix {base} | R Documentation |
Convert a Data Frame to a Numeric Matrix
Description
Return the matrix obtained by converting all the variables in a data frame to numeric mode and then binding them together as the columns of a matrix. Factors and ordered factors are replaced by their internal codes.
Usage
data.matrix(frame, rownames.force = NA)
Arguments
frame |
a data frame whose components are logical vectors, factors or numeric or character vectors. |
rownames.force |
logical indicating if the resulting matrix
should have character (rather than |
Details
Logical and factor columns are converted to integers. Character
columns are first converted to factors and then to integers. Any other
column which is not numeric (according to is.numeric
) is
converted by as.numeric
or, for S4 objects,
as(, "numeric")
. If all columns are integer (after
conversion) the result is an integer matrix, otherwise a numeric
(double) matrix.
Value
If frame
inherits from class "data.frame"
, an integer or
numeric matrix of the same dimensions as frame
, with dimnames
taken from the row.names
(or NULL
, depending on
rownames.force
) and names
.
Otherwise, the result of as.matrix
.
Note
The default behaviour for data frames differs from R < 2.5.0 which always gave the result character rownames.
References
Chambers, J. M. (1992) Data for models. Chapter 3 of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.
See Also
as.matrix
,
data.frame
,
matrix
.
Examples
DF <- data.frame(a = 1:3, b = letters[10:12],
c = seq(as.Date("2004-01-01"), by = "week", length.out = 3),
stringsAsFactors = TRUE)
data.matrix(DF[1:2])
data.matrix(DF)