←
PDF 329 / 520 Visualizing Lists
→
English · PDF 329
Original PDF page 329
中文 · PDF 329
#> [1] 1
#>
#> [[2]]
#> [1] 2
#>
#> [[3]]
#> [1] 3

处理列表时非常有用的工具是 str() 因为它关注的是结构,而不是内容:

str(x)
#> List of 3
#>  $ : num 1
#>  $ : num 2
#>  $ : num 3x_named <- list(a = 1, b = 2, c = 3)
str(x_named)
#> List of 3
#>  $ a: num 1
#>  $ b: num 2
#>  $ c: num 3

与原子向量不同, lists() 可以包含混合类型的对象:

y <- list("a", 1L, 1.5, TRUE)
str(y)
#> List of 4
#>  $ : chr "a"
#>  $ : int 1
#>  $ : num 1.5
#>  $ : logi TRUE

列表甚至可以包含其他列表!

z <- list(list(1, 2), list(3, 4))
str(z)
#> List of 2
#>  $ :List of 2
#>  ..$ : num 1
#>  ..$ : num 2
#>  $ :List of 2
#>  ..$ : num 3
#>  ..$ : num 4

可视化列表

为了解释更复杂的列表操作函数,拥有列表的可视化表示会很有帮助。例如,看这三个列表: