嵌套列表 r 中的子集化

Nic*_*ano 2 nested r list subset

我有以下清单:

mylist<-list(c("25","0"),c("50","1"),c("100","2"))
Run Code Online (Sandbox Code Playgroud)

我想立即提取列表中每个元素的第一个元素。那是

c(mylist[[1]][1],mylist[[2]][1],mylist[[3]][1])
Run Code Online (Sandbox Code Playgroud)

我尝试了以下但没有成功:

mylist[[]][1]; mylist[[.]][1]; mylist[1:3][1]
Run Code Online (Sandbox Code Playgroud)

我感谢任何有效地做到这一点的建议

tyl*_*uRp 5

另一种lapply解决方案:

lapply(mylist,"[", 1)
Run Code Online (Sandbox Code Playgroud)
[[1]]
[1] "25"

[[2]]
[1] "50"

[[3]]
[1] "100"
Run Code Online (Sandbox Code Playgroud)

随着purrr我们也可以这样做:

purrr::map(mylist, ~ .x[1])
Run Code Online (Sandbox Code Playgroud)
[[1]]
[1] "25"

[[2]]
[1] "50"

[[3]]
[1] "100"
Run Code Online (Sandbox Code Playgroud)

但是,lapply应该更快。