创建一个数组

我们可以提供一个向量,然后调用 array( )函数来创建一个数组,指定数组的不同维
度,有时也可以给出不同维度的行名和列名。
假设数据是 0~9 这 10 个整数,需要将其分配到 3 个维度中,其中第 1 维长度为 1,
第 2 维长度为 5,第 3 维长度为 2:
a1 <- array(c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9), dim = c(1, 5, 2))
a1
## , , 1
##
## [,1] [,2] [,3] [,4] [,5]
## [1,] 0 1 2 3 4
##
## , , 2
##
## [,1] [,2] [,3] [,4] [,5]
## [1,] 5 6 7 8 9
显然,同样可以通过指定位置访问数组中的元素。
此外,还可以在创建数组时对每个维度进行命名:
a1 <- array(c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9), dim = c(1, 5, 2), dimnames
= list(c("r1"), c("c1", "c2", "c3", "c4", "c5"), c("k1", "k2")))
a1
## , , k1
##
## c1 c2 c3 c4 c5
## r1 0 1 2 3 4
##
## , , k2
##
## c1 c2 c3 c4 c5
## r1 5 6 7 8 9
若存在已经创建的数组,可以提供一个包含若干个字符向量的列表,用 dimnames(x)<-
对数组的各个维度命名:
a0 <- array(c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10), dim = c(1, 5, 2))
dimnames(a0) <- list(c("r1"), c("c1", "c2", "c3", "c4", "c5"), c("k1",
"k2"))
a0
## , , k1
##
## c1 c2 c3 c4 c5
## r1 0 1 2 3 4
##
## , , k2
##
## c1 c2 c3 c4 c5
## r1 5 6 7 8 9

posted @ 2019-01-22 10:08  NAVYSUMMER  阅读(307)  评论(0编辑  收藏  举报
交流群 编程书籍