# R FAQS about Matrix | Data Structure for Matrix in R

**Question:** What is matrix in R?

**Answer:** In R language matrices are two dimensional arrays of elements all of which are of the same type, for example numbers, character strings or logical values.

Matrices may be constructed using the built in function “matrix”, which reshapes its first argument into a matrix having specified number of rows as second argument and number of columns as third matrix.

**Question:** Give an example of how matrix is constructed in R language?

**Answer:** A 3 by 3 matrix (3 rows and 3 columns) matrix may be constructed such as:

matrix(1:9, 3, 3)

matrix(c(1,2,3,4,5,6,7,8,9), 3, 3)matrix(runif(9), 3,3)

First two commands constructs a matrix of 9 elements having 3 rows and 3 columns consisting numbers from 1 up to 9. The third command makes a matrix of 3 rows and 3 columns with random numbers from uniform distribution.

**Question:** How the matrix elements are filled?

**Answer:** A matrix is filled by columns, unless the optional argument ** byrow** is set to

**TRUE**as argument in matrix command, for example

matrix(1:9, 3, 3, byrow=TRUE)

**Question:** Can matrix be stored in R?

**Answer:** Any matrix can be stored in R such as

m <- matrix(1:9, 3, 3)

mymatrix <- matrix( rnorm(16), nrow=4 )

Matrices are stored in “m” and “mymatrix” ** object.** The second command construct a matrix having 16 elements with 4 rows from normal distribution having mean 0 and variance 1.

**Question:** what is the use of * dim* command in R?

**Answer:**The

*(dimension) is an attribute of matrix in R, which tells the number of rows and the number of columns of a matrix, for example,*

**dim**dim(mymatrix)

This will results in output showing 4 4, meaning that 4 rows and 4 column matrix.

**Question:** Can we name rows of a matrix in R?

**Answer:** Yes in R language we can name rows of a matrix according to ones requirements, such as

rownames(mymatrix) <- c(“x1”, “x2”, “x3”, “x4”)

mymatrix

**Question:** Can column names be changes or updated in R?

**Answer:** The procedure is same as changing of rows name. For this purpose * colnames* command is used, for example

colnames(mymatrix)<-c(“A”, “B”, “C”, “D”)

mymatrix

**Question:** What is the purpose of * attributes* command for matrix in R?

**Answer:**The

*function can be used to get information about dimension of matrix and dimnames (dimension names). For example;*

**attributes**attributes(mymatrix)