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

*function and ensure that variable is a matrix or not.*

**class()**## 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

## 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

## Add a new row or column in existing Matrix

We can add a new row using * rbind()* and column using

*function in an existing matrix. See this example*

**cbind()**#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

## 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

## 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

**Cheers 🙂 Happy Learning**

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