R Matrices – Create , Access, Transpose, Combine Matrices in R

Sharing is Caring

A Matrix is a collection of data values in 2 dimensions of the same basic data type, R creates a matrix of values using a matrix() function. It is similar to vector and has one additional dimension attribute. We can check R Matrices class using class() function and ensure that variable is a matrix or not.

Creating a Matrix in R

See the basic syntax for creating a matrix in R using matrix() function.

matrix(vector,nrow,ncol,byrow)

vector– a variable of vector datatype

nrow– the number of rows in a matrix

ncol– the number of column in a matrix

byrow– a boolean value, if it is true then input vector values will be arranged by row

See this example of creating a matrix

#Create a matrix using Vector
test_matrix<-matrix(c(1,2,3,4,5,6), nrow=2, ncol=2,byrow= TRUE)
#Print matrix on console
print(test_matrix)

and output is

     [,1] [,2]
[1,]    1    2
[2,]    3    4

Accessing values of a Matrix

We can access an entire row, column or any specific value using row and column index of the matrix. See this example here to get an idea about it

#Create a matrix using Vector
test_matrix<-matrix(c(1,2,3,4,5,6), nrow=2, ncol=2,byrow= TRUE)

#Print 1st row on console
print(test_matrix[1,])

#Print 2nd column on console
print(test_matrix[,2])

#Print 1st column of 2nd row on console
print(test_matrix[2,1])

and output is like this

Access Matrix Elements in R

Performing Arithmetic Operations on R Matrices

We can perform addition, subtraction, multiplication and division on the matrices that have the same dimension. See this example.

#Create two matrix using Vector
first_matrix<-matrix(c(1,2,3,4,5,6), nrow=2, ncol=2,byrow= TRUE)
sec_matrix<-matrix(c(7,8,9,10,11,12), nrow=2, ncol=2,byrow= TRUE)

#First Matrix
print(first_matrix)

#Second Matrix
print(sec_matrix)

#Addition
print(first_matrix + sec_matrix)

#Subtraction
print(first_matrix - sec_matrix)

#Multiplication
print(first_matrix * sec_matrix)

#Division
print(first_matrix / sec_matrix)

and see the output on R console

Arithmetic Operation On Matrix in R

Add a new row or column in existing Matrix

We can add a new row using rbind() and column using cbind() function in an existing matrix. See this example

#Create a matrix using Vector
first_matrix<-matrix(c(1,2,3,4,5,6), nrow=2, ncol=2,byrow= TRUE)

#First Matrix
print(first_matrix)

#Adding new row in matrix
v <- c(89,90,91)
first_matrix <- rbind(first_matrix,v)
print(first_matrix)

#Adding new column in matrix
v <- c(92,93,94)
first_matrix <- cbind(first_matrix,v)
print(first_matrix)

and output is

Add row or column in Matrix in R

Combining Matrices in R

We can combine the column of two matrices that have the same number of rows using cbind() function.

#Create two matrix using Vector
first_matrix<-matrix(c(1,2,3,4,5,6), nrow=2, ncol=2,byrow= TRUE)
sec_matrix<-matrix(c(7,8,9,10,11,12), nrow=2, ncol=2,byrow= TRUE)

#First Matrix
print(first_matrix)

#Second Matrix
print(sec_matrix)

#Combining two matrices
print(cbind(first_matrix,sec_matrix))

the output on R Console is

Combining R Matrices

Transpose Matrix

We can create the transpose matrix of a matrix using t() function.

#Create a matrix using Vector
first_matrix<-matrix(c(1,2,3,4,5,6), nrow=2, ncol=2,byrow= TRUE)

#First Matrix
print(first_matrix)

#Transpose matrix
print(t(first_matrix))

The output on R Console is

Transpose a Matrix in R

Cheers 🙂 Happy Learning

Related Posts

An Oracle ACE, Blogger, Reviewer, Technical Lead working on Oracle ADF

Leave a Reply

Your email address will not be published. Required fields are marked *