Arrays are the R data objects which can store data in more than two dimensions. For example: If we create an array of dimensions (2, 3, 4) then it creates 4 rectangular matrices each with 2 rows and 3 columns. These types of arrays are called Multidimensional Arrays. Arrays can store only data types.
Creating a Multidimensional Array
An array is created using the array()
function. It takes vectors as input and uses the values in the dim parameter to create an array. A multidimensional array can be created by defining the value of ‘dim‘ argument as the number of dimensions that are required.
Syntax:
MArray = array(c(vec1, vec2), dim)
Examples:
vector1 < - c( 5 , 9 , 3 )
vector2 < - c( 10 , 11 , 12 , 13 , 14 , 15 )
result < - array(c(vector1, vector2), dim = c( 3 , 3 , 2 ))
print (result)
|
Output:
, , 1
[,1] [,2] [,3]
[1,] 5 10 13
[2,] 9 11 14
[3,] 3 12 15
, , 2
[,1] [,2] [,3]
[1,] 5 10 13
[2,] 9 11 14
[3,] 3 12 15
Naming Columns and Rows
We can give names to the rows, columns, and matrices in the array by using the dimnames
parameter.
Example:
vector1 < - c( 5 , 9 , 3 )
vector2 < - c( 10 , 11 , 12 , 13 , 14 , 15 )
column.names < - c( "COL1" , "COL2" , "COL3" )
row.names < - c( "ROW1" , "ROW2" , "ROW3" )
matrix.names < - c( "Matrix1" , "Matrix2" )
result < - array(c(vector1, vector2), dim = c( 3 , 3 , 2 ),
dimnames = list (row.names, column.names,
matrix.names))
print (result)
|
Output:
, , Matrix1
COL1 COL2 COL3
ROW1 5 10 13
ROW2 9 11 14
ROW3 3 12 15
, , Matrix2
COL1 COL2 COL3
ROW1 5 10 13
ROW2 9 11 14
ROW3 3 12 15
Manipulating Array Elements
As the array is made up of matrices in multiple dimensions, the operations on elements of the array are carried out by accessing elements of the matrices. There are various different Operations can be performed on Arrays.
Example:
vector1 < - c( 5 , 9 , 3 )
vector2 < - c( 10 , 11 , 12 , 13 , 14 , 15 )
array1 < - array(c(vector1, vector2), dim = c( 3 , 3 , 2 ))
vector3 < - c( 9 , 1 , 0 )
vector4 < - c( 6 , 0 , 11 , 3 , 14 , 1 , 2 , 6 , 9 )
array2 < - array(c(vector1, vector2), dim = c( 3 , 3 , 2 ))
matrix1 < - array1[,, 2 ]
matrix2 < - array2[,, 2 ]
result < - matrix1 + matrix2
print (result)
|
Output:
[,1] [,2] [,3]
[1,] 10 20 26
[2,] 18 22 28
[3,] 6 24 30
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!