构建数组子集
从数组中提取子集的原理与矩阵完全相同。我们通过给每个维度提供一个向量来提取
数组子集。
a1[1,,]
## k1 k2
## c1 0 5
## c2 1 6
## c3 2 7
## c4 3 8
## c5 4 9
a1[, 2,]
## k1 k2
## 1 6
a1[,,1]
## c1 c2 c3 c4 c5
## 0 1 2 3 4
a1[1,1,1]
## [1] 0
a1[1,2:4,1:2]
## k1 k2
## c2 1 6
## c3 2 7
## c4 3 8
a1[c("r1"),c("c1", "c3"),"k1"]
## c1 c3
## 0 2
细心的读者可能会发现,原子向量、矩阵和数组的性质和操作方式几乎完全相同。
最基本的共同特征就是它们都属于同质数据类 (homogeneous data types) ),即所存储的一定
是相同类型的元素。但是在 R 中也存在异质数据类 (heterogeneous data types) ),即可以存
储不同类型的元素,这大大提高了存储的灵活性,但同时也降低了存储效率和运行效率。