R Matrix

Matrix :

  • A matrix is a collection of data elements arranged in a two-dimensional rectangular layout
  • Matrix is a collection of vectors of same length

Consider a matrix ‘mat1’

Syntax
mat1
	class(mat1)
		[1] “matrix”

Output :

Matrix example output in r language

Creating Matrix

A matrix can be created in various ways

  • by using matrix() function
Syntax
//Syntax:
	matrix(data = x , nrow = ‘no. of rows’, ncol = ‘no. of columns’, byrow = TRUE/ FALSE, dimnames = “names for col and row’ )

Consider a hospital which has 4 general physicians for consulting. We need to distribute people with the following age groups among these four physicians

Syntax
ageGroup<-c(22,51,60,23,25,36,34,62,44,49,43,52,12,24,45,33,43,19,20,13,53,23,37,34) 

We can convert the ageGroup vector to a matrix using the matrix() function and name the columns and rows accordingly

CODE/PROGRAM/EXAMPLE
ageGroup<-c(22,51,60,23,25,36,34,62,44,49,43,52,12,24,45,33,43,19,20,13,53,23,37,34)
	length(ageGroup)
	[1] 24

	#Create 4 queues for each physician namely A, B, C, D
	ageGroup.mat <- matrix(data = ageGroup, ncol = 4, byrow = FALSE, 
						   dimnames = list(c("R1","R2","R3","R4","R5","R6"),
						   c("A","B","C","D")))
	ageGroup.mat

Output :

Creating Matrix example in r language

by using rbind() and cbind()

rbind() and cbind() functions bind different vectors of equal length as per rows and columns respectively

Syntax
//Syntax:
	x.mat <- rbind(a, b, c)  or cbind(a, b, c)

where x is the new matrix object
a, b, c are vectors of equal length and of homogeneous type

Consider a scenario where there is a need to organize the GMAT scores of 4 members into “English, Math and Science” categories. Create a matrix from the below vectors, using rbind() and cbind() functions

CODE/PROGRAM/EXAMPLE
Jane <- c(99,96,99.2)
Tom <- c(99.8,98.3,99.7)
Katy <- c(99.4, 99.2, 98.9)
James <- c(98.3,99.1,99.9)

Using rbind() function:

CODE/PROGRAM/EXAMPLE
GMAT.mat <- rbind(Jane,Tom,Katy,James)
	colnames(GMAT.mat) <- c("English","Math","Science")
	GMAT.mat

Output :

rbind() output example 1 in r language
Notepad

Note : Once a matrix is created using either rbind() or cbind(), it can be converted to the other respective matrix by using the transpose function, t()

colnames() and rownames() functions are used to view or modify the column and row names respectively

dim()

dim() is used to view or modify the dimensions of a matrix or a data frame

Syntax
//Syntax:
	 dim(x) <- c(a,b)

where x can be vector, list, factor, matrix or data frame
a, b are the dimensions of x

Consider the previous example where people got divided into 4 queues as per the physicians

dim() output example 1 in r language

Say, one of the physician leaves. Now, if we want to divide the ageGroup matrix to 3 groups, use dim() function

CODE/PROGRAM/EXAMPLE
dim(ageGroup) <- c(8,3)
	ageGroup
	class(ageGroup)
	[1] “matrix”
dim() output example 1 in r language

Addressing Matrix

Values in a matrix can be retrieved by declaring an index inside a single square bracket “[ ]” operator

Syntax
//Syntax:
	matrix_name[x,y]

where x, y specify the dimensions of the matrix

Consider the GMAT matrix

Addressing Matrix example 1 in r language

If we want to retrieve the Math score of Katy

CODE/PROGRAM/EXAMPLE
GMAT.mat[2,3]
	[1] 99.2

If we want to modify the Math score of Katy

CODE/PROGRAM/EXAMPLE
GMAT.mat[2,3] <- 99.8
	GMAT.mat

Output :

Addressing Matrix example 2 in r language
#r_language_matrix #Matrix_in_r_language #Creating_Matrix_in_language #Creating_Matrix_in_programming #rbind()_function_in_r_language #cbind()_function_in_r_language #dim()_function_in_r_language

(New page will open, for Comment)

Not yet commented...