A matrix is simply a set of numbers arranged in rows and columns to form a rectangular array. The numbers inside a matrix are called the elements, or entries, of the matrix.
In this shot, we want to look at matrices in R
and access the elements present in a matrix. Before learning how to access the elements of a matrix, let’s see how a matrix can be created using the matrix()
function.
The matrix()
function in R
is simply used to create a matrix.
The syntax of the matrix()
function is given as:
matrix(data, nrow, ncol, byrow, dimnames)
The parameter values of the matrix()
function take the following parameters:
data
: This is a required value. It is the input vector which becomes the data elements of the matrix.nrow
: This is a required value. It is the desired number of rows.ncol
: This is a required value. It is the desired number of columns.byrow
: This is an optional value. It is logical. If FALSE
by default, the matrix is filled by columns. If otherwise, the matrix is filled by rows.dimnames
: This is optional. It is an attribute for the matrix of length two (2
), giving the respective names of rows and columns of the matrix.# using the matrix() function to create a matrixmymatrix <- matrix(c(1,2,3,4,5,6), nrow = 2, ncol = 2, byrow = FALSE, dimname = list(c("row1", "row2"), c("Col1", "Col2")) )# print the matrixmymatrix
It is worth noting and remembering that the
c()
function is used to concatenate items together inR
.
To access the items or elements of a matrix, we use the []
. Inside this bracket must be two numbers separated by a comma. The first number is simply to specify the row where the element you seek can be found, while the second number is used to specify the column where the element you seek can be found.
For example:
[1, 2]
The expression above simply means that we are telling R
to return an element which can be found in the first row and in the second column of a matrix.
# creating a 2 by 2 matrixmymatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)# printing the matrixmymatrix# to access row 1 column 2 element of the matrixmymatrix[1, 2]