Convert a Data Frame to a Numeric Matrix
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.
data.matrix(frame, rownames.force = NA)
- a data frame whose components are logical vectors, factors or numeric vectors.
- logical indicating if the resulting matrix
should have character (rather than
rownames. The default,
NULLrownames if the data frame has automatic row.names or for a zero-row data frame.
Logical and factor columns are converted to integers. Any other
column which is not numeric (according to
as.numeric or, for S4 objects,
as(, "numeric"). If all columns are integer (after
conversion) the result is an integer matrix, otherwise a numeric
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.
The default behaviour for data frames differs from R < 2.5.0 which always gave the result character rownames.
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.
DF <- data.frame(a = 1:3, b = letters[10:12], c = seq(as.Date("2004-01-01"), by = "week", len = 3), stringsAsFactors = TRUE) data.matrix(DF[1:2]) data.matrix(DF)