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)
我感谢任何有效地做到这一点的建议
另一种lapply
解决方案:
lapply(mylist,"[", 1)
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)[[1]] [1] "25" [[2]] [1] "50" [[3]] [1] "100"
随着purrr
我们也可以这样做:
purrr::map(mylist, ~ .x[1])
Run Code Online (Sandbox Code Playgroud)
Run Code Online (Sandbox Code Playgroud)[[1]] [1] "25" [[2]] [1] "50" [[3]] [1] "100"
但是,lapply
应该更快。