数组
- 数组可以看作是带有多个下标的类型相同的元素的集合;
维度向量(dimension vector)是一个元素取正整数的向量。如果它的长度为 k,那么该数组就是 k -维的;
向量只有在定义了 dim 属性后才能作为数组在 R 中使用。假定,z 是一个含1500 个元素的向量。那么:
dim(z) <- c(3,5,100)
对 dim 属性的赋值使得该向量成一个 3 × 5 × 100 的数组
使用array()函数创建数组:
Z <- array(data_vector, dim_vector)
数据向量的值在数组中的排列顺序 采用 FORTRaN 的数组元素次序,即“按列次序”, 也就是说第一下标变化最快,最后下标变化最慢。
数组的外积(outer product):
- 如果 a 和 b 是两个数值数组,它们的外积将是这样的一个数组: 维度向量通过连接两个操作数的维度向量(顺序非常的重要)得到;数据向量则由 a 的数据向量元素和 b 的数据向量元素的所有可能乘积得到。
- 外积是通过特别的操作符 %o%实现:
- 或
ab <- outer(a, b, "*")
函数 aperm(a, perm) 可以用来重排一个数组 a。参数 perm 可以是 {1, ..., k}的一个排列,其中 k 是 a 的下标数目。这个函数将产生一个和a大小一致的数组,不过旧的维度 perm[j]将会变成第j个维度。
将一个数组强制转换成简单的向量的标准方式是用函数 as.vector()。