R 数组


数组

与矩阵相比,数组可以具有两个以上的维度。

我们可以使用array()函数创建一个数组,并且dim指定尺寸的参数:

示例

# An array with one dimension with values ranging from 1 to 24
thisarray <- c(1:24)
thisarray

# An array with more than one dimension
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray
亲自试一试 »

示例解释

在上面的示例中,我们创建一个值为 1 到 24 的数组。

如何dim=c(4,3,2)工作?
括号中的第一个和第二个数字指定行数和列数。
括号中的最后一个数字指定我们想要多少个维度。

笔记:数组只能有一种数据类型。


访问数组项

您可以通过引用索引位置来访问数组元素。您可以使用[]括号来访问数组中所需的元素:

示例

thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))

multiarray[2, 3, 2]
亲自试一试 »

语法如下:数组[行位置,列位置,矩阵级别]

您还可以使用数组中的矩阵访问整个行或列c()功能:

示例

thisarray <- c(1:24)

# Access all the items from the first row from matrix one
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[c(1),,1]

# Access all the items from the first column from matrix one
multiarray <- array(thisarray, dim = c(4, 3, 2))
multiarray[,c(1),1]
亲自试一试 »

c() 之前的逗号 (,) 表示我们要访问该列。

c() 后面的逗号 (,) 表示我们要访问该行。



检查项目是否存在

要查明指定的项目是否存在于数组中,请使用%in%运算符:

示例

检查数组中是否存在值 "2":

thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))

2 %in% multiarray
亲自试一试 »

行数和列数

使用dim()函数查找数组中的行数和列数:

示例

thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))

dim(multiarray)
亲自试一试 »

数组长度

使用length()求数组维数的函数:

示例

thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))

length(multiarray)
亲自试一试 »

循环遍历数组

您可以使用循环遍历数组项for环形:

示例

thisarray <- c(1:24)
multiarray <- array(thisarray, dim = c(4, 3, 2))

for(x in multiarray){
  print(x)
}
亲自试一试 »