1.1 Creating matrices in R
Create a \(3 \times 4\) matrix, meaning 3 row and 4 columns, that is all 1s:
matrix(1, 3, 4) [,1] [,2] [,3] [,4]
[1,] 1 1 1 1
[2,] 1 1 1 1
[3,] 1 1 1 1
Create a \(3 \times 4\) matrix filled in with the numbers 1 to 12 by column (default) and by row:
matrix(1:12, 3, 4) [,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
matrix(1:12, 3, 4, byrow = TRUE) [,1] [,2] [,3] [,4]
[1,] 1 2 3 4
[2,] 5 6 7 8
[3,] 9 10 11 12
Create a matrix with one column:
matrix(1:4, ncol = 1) [,1]
[1,] 1
[2,] 2
[3,] 3
[4,] 4
Create a matrix with one row:
matrix(1:4, nrow = 1) [,1] [,2] [,3] [,4]
[1,] 1 2 3 4
Check the dimensions of a matrix
A = matrix(1:6, 2, 3)
A [,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
dim(A)[1] 2 3
Get the number of rows in a matrix:
dim(A)[1][1] 2
nrow(A)[1] 2
Create a 3D matrix (called array):
A = array(1:6, dim = c(2, 3, 2))
A, , 1
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
, , 2
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
dim(A)[1] 2 3 2
Check if an object is a matrix. A data frame is not a matrix. A vector is not a matrix.
A = matrix(1:4, 1, 4)
A [,1] [,2] [,3] [,4]
[1,] 1 2 3 4
class(A)[1] "matrix" "array"
B = data.frame(A)
B X1 X2 X3 X4
1 1 2 3 4
class(B)[1] "data.frame"
C = 1:4
C[1] 1 2 3 4
class(C)[1] "integer"