R类型4R 语言数组
Posted 克维拉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R类型4R 语言数组相关的知识,希望对你有一定的参考价值。
R语言数组
1数组是可以在两个以上维度中存储数据的R数据对象
怎么创建
使用array()函数创建数组。 它使用向量作为输入,并使用dim参数中的值创建数组。
例
以下示例创建一个由两个3x3矩阵组成的数组,每个矩阵具有3行和3列。
# Create two vectors of different lengths.
vector1 <- c(5,9,3)
vector2 <- c(10,11,12,13,14,15)
# Take these vectors as input to the array.
result <- array(c(vector1,vector2),dim = c(3,3,2)) //就是这样创建, dim(几行,几列,矩阵个数)
print(result)
当我们执行上面的代码,它产生以下结果 -
, , 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
2命名列和行
我们可以使用dimnames参数给数组中的行,列和矩阵命名。
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)) //这边命名行
当我们执行上面的代码,它产生以下结果 -
, , 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
3访问数组元素
# Print the third row of the second matrix of the array.
print(result[3,,2]) //第2个矩阵第3行
# Print the element in the 1st row and 3rd column of the 1st matrix.
print(result[1,3,1])//第1个矩阵第1列第3行
# Print the 2nd Matrix.
print(result[,,2])//第2个矩阵
4操作数组元素
由于数组由多维构成矩阵,所以对数组元素的操作通过访问矩阵的元素来执行。
# Create two vectors of different lengths.
vector1 <- c(5,9,3)
vector2 <- c(10,11,12,13,14,15)
# Take these vectors as input to the array.
array1 <- array(c(vector1,vector2),dim = c(3,3,2))
# Create two vectors of different lengths.
array2 <- array(c(vector1,vector2),dim = c(3,3,2))
# create matrices from these arrays.
matrix1 <- array1[,,2] //获的第2个矩阵
matrix2 <- array2[,,2]//获取第2个矩阵
# Add the matrices.
result <- matrix1+matrix2//矩阵相加
print(result)
以上是关于R类型4R 语言数组的主要内容,如果未能解决你的问题,请参考以下文章