| matrix {base} | R Documentation |
Matrices
Description
matrix creates a matrix from the given set of values.
as.matrix attempts to turn its argument into a matrix.
is.matrix tests if its argument is a (strict) matrix.
Usage
matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,
dimnames = NULL)
as.matrix(x, ...)
## S3 method for class 'data.frame'
as.matrix(x, rownames.force = NA, ...)
is.matrix(x)
Arguments
data |
an optional data vector. |
nrow |
the desired number of rows. |
ncol |
the desired number of columns. |
byrow |
logical. If |
dimnames |
A |
x |
an R object. |
... |
additional arguments to be passed to or from methods. |
rownames.force |
logical indicating if the resulting matrix
should have character (rather than |
Details
If one of nrow or ncol is not given, an attempt is
made to infer it from the length of data and the other
parameter. If neither is given, a one-column matrix is returned.
If there are too few elements in data to fill the array,
then the elements in data are recycled. If data has
length zero, NA of an appropriate type is used for atomic
vectors (0 for raw vectors) and NULL for lists.
is.matrix returns TRUE if x is a matrix and has a
dim attribute of length 2) and FALSE otherwise.
Note that a data.frame is not a matrix by this
test. It is generic: you can write methods to handle
specific classes of objects, see InternalMethods.
as.matrix is a generic function. The method for data frames
will return a character matrix if there is any
non-(numeric/logical/complex) column, applying format to
non-character columns. Otherwise, the usual coercion hierarchy
(logical < integer < double < complex) will be used, e.g., all-logical
data frames will be coerced to a logical matrix, mixed logical-integer
will give a integer matrix, etc.
When coercing a vector, it produces a one-column matrix, and promotes the names (if any) of the vector to the rownames of the matrix.
References
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
See Also
data.matrix, which attempts to convert to a numeric matrix.
Examples
is.matrix(as.matrix(1:10))
!is.matrix(warpbreaks)# data.frame, NOT matrix!
warpbreaks[1:10,]
as.matrix(warpbreaks[1:10,]) #using as.matrix.data.frame(.) method
# Example of setting row and column names
mdat <- matrix(c(1,2,3, 11,12,13), nrow = 2, ncol=3, byrow=TRUE,
dimnames = list(c("row1", "row2"),
c("C.1", "C.2", "C.3")))
mdat