R清单简介

示例

列表允许用户在单个对象下存储多个元素(如向量和矩阵)。您可以使用该list函数创建列表:

l1 <- list(c(1, 2, 3), c("a", "b", "c"))
l1
## [[1]]
## [1] 1 2 3
## 
## [[2]]
## [1] "a" "b" "c"

注意组成上面列表的向量是不同的类。列表允许用户对不同类别的元素进行分组。列表中的每个元素也可以有一个名称。列表名称由names函数访问,并以相同的方式分配矩阵中的行和列名称。

names(l1)
## NULL
names(l1) <- c("vector1", "vector2")
l1
## $vector1
## [1] 1 2 3
## 
## $vector2
## [1] "a" "b" "c"

创建列表对象时,声明列表名称通常更加容易和安全。

l2 <- list(vec = c(1, 3, 5, 7, 9),
       mat = matrix(data = c(1, 2, 3), nrow = 3))
l2
## $vec
## [1] 1 3 5 7 9
## 
## $mat
##      [,1]
## [1,]    1
## [2,]    2
## [3,]    3
names(l2)
## [1] "vec" "mat"

列表上方有两个元素,分别是“ vec”和“ mat”,分别是向量和矩阵。