第7章 数组

数组(array)是矩阵的扩展,可以将矩阵扩展至2维以上。1维数组相当于向量[小节3],2维数组相当于矩阵[小节5]。R中使用array()函数创建数组,主要的参数为:

  • X输入数据,可以是向量或者矩阵。
  • dim输出维度,如果输出多维度,使用c(m,n,k,..),其中m×n为最内层矩阵。
  • # 创建3×6维的数组
    var_array1 <- array(seq(1:18), dim=c(3,6)) 
    var_array1
    ##      [,1] [,2] [,3] [,4] [,5] [,6]
    ## [1,]    1    4    7   10   13   16
    ## [2,]    2    5    8   11   14   17
    ## [3,]    3    6    9   12   15   18
    # 创建3×2×3维的数组 
    var_array2 <- array(seq(1:18), dim=c(3,2,3)) 
    var_array2
    ## , , 1
    ## 
    ##      [,1] [,2]
    ## [1,]    1    4
    ## [2,]    2    5
    ## [3,]    3    6
    ## 
    ## , , 2
    ## 
    ##      [,1] [,2]
    ## [1,]    7   10
    ## [2,]    8   11
    ## [3,]    9   12
    ## 
    ## , , 3
    ## 
    ##      [,1] [,2]
    ## [1,]   13   16
    ## [2,]   14   17
    ## [3,]   15   18
    # 获取第3层的矩阵
    var_array2[,,3] 
    ##      [,1] [,2]
    ## [1,]   13   16
    ## [2,]   14   17
    ## [3,]   15   18