📅  最后修改于: 2023-12-03 14:47:11.747000             🧑  作者: Mango
在R编程中,数组指的是多维数组,是一种数据类型,可以包含不同类型的数据。本文将介绍如何创建、访问、操作和删除数组。
使用 array
函数可以创建一个多维数组。该函数的格式如下所示:
array(data, dim = c(dim1, dim2, dim3, ...))
其中,data
是包含要存储在数组中的数据的向量或矩阵,dim
是一个向量,用于指定数组每个维度的大小。
举例来说,下面的代码会创建一个 2x3x4
的三维数组:
my_array <- array(data = 1:24, dim = c(2, 3, 4))
可以按照下面的格式访问数组中的元素:
my_array[,,...] # 使用逗号分隔索引,每个逗号代表一个维度的索引位置
例如,要访问三维数组的第 1
行、第 2
列和第 3
层,可以使用如下代码:
my_array[1, 2, 3]
可以使用同样的方式来更改数组中的元素:
my_array[1, 2, 3] <- 9
这将把第 1
行、第 2
列和第 3
层的元素设置为 9
。
可以使用 rbind
或 cbind
函数来合并两个或多个数组。例如,可以使用以下代码将两个二维数组 a
和 b
按行合并:
ab <- rbind(a, b)
或者按列合并:
ab <- cbind(a, b)
可以使用 subset
函数来提取数组的子集。例如,要从三维数组中提取第 1
行和第 2
行,可以使用如下代码:
subset(my_array, 1:2, , ) # 逗号分隔的索引表示哪些行、列和层保留
这将返回一个 2x3x4
的数组,其中第三个维度的所有元素都被保留。
可以使用 aperm
函数重新排列数组的维度。例如,要将三维数组的第 1
维和第 3
维互换,可以使用如下代码:
my_array_perm <- aperm(my_array, c(3, 2, 1))
这将返回一个 4x3x2
的数组。
要删除数组,只需将其赋值为 NULL
:
my_array <- NULL
这将释放数组占用的内存。
本文介绍了在R编程中创建、访问、操作和删除多维数组的方法。这些操作对于处理大量数据集非常有用。