【上一篇:76.关于向量取子集】
【下一篇:78.关于向量的属性-重点介绍class属性】
没错,列表是vector。因为列表中各元素的类型可以不同,因此列表里还可以包含列表,因此很适合用来表示层次结构或树状结构。用函数list()创建一个空列表。当更关注对象的结构而不是内容的时候,可以用str()函数查看对象的结构。
list()函数创建列表:
# 创建不带names的列表,元素名默认为数字
> list("a","b","c")
[[1]]
[1] "a"
[[2]]
[1] "b"
[[3]]
[1] "c"
# 创建带names的列表
> list(A="a",B="b",C="c")
$A
[1] "a"
$B
[1] "b"
$C
[1] "c"
列表取子集有三种方式:1)" [ "函数:返回值是一个sub-list;2)" [[ "函数:只能取出一个列表元素,但返回值不是sub-list,而是删除了一层层次结构的对象,即扔掉了元素的name;3)" $ ":和" [[ "一样,只能取出一个列表元素,返回值扔掉了元素的name,不同的地方在于仅工作于named list。
网友评论