[英]Subset a vector of lists in R
Let's say I have a vector of lists:假设我有一个列表向量:
library(tidyverse)
d <- tribble(
~x,
c(10, 20, 64),
c(22, 11),
c(5, 9, 99),
c(55, 67),
c(76, 65)
)
How can I subset this vector such that, for example, I have have rows with lists having a length greater than 2?我如何子集这个向量,例如,我有长度大于 2 的列表的行? Here is my unsuccessful attempt using the tidyverse:这是我使用 tidyverse 的失败尝试:
filter(d, length(x) > 2)
# A tibble: 5 x 1
x
<list>
1 <dbl [3]>
2 <dbl [2]>
3 <dbl [3]>
4 <dbl [2]>
5 <dbl [2]>
It would be lengths
as the 'x' is a list
这将是lengths
因为“x”是一个list
library(dplyr)
d %>%
filter(lengths(x) > 2)
您可以使用subset()
+ lengths()
subset(d,lengths(x)>2)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.