【问题标题】:Subset a vector of lists in R子集R中的列表向量
【发布时间】:2020-04-27 13:21:59
【问题描述】:

假设我有一个列表向量:

library(tidyverse)

d <- tribble(
  ~x,
  c(10, 20, 64),
  c(22, 11),
  c(5, 9, 99),
  c(55, 67),
  c(76, 65)
)

我怎样才能子集这个向量,例如,我有列表长度大于 2 的行?这是我使用 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]>

【问题讨论】:

    标签: r list dplyr subset tidyverse


    【解决方案1】:

    应该是lengths,因为“x”是list

    library(dplyr)
    d %>%
         filter(lengths(x) > 2)
    

    【讨论】:

      【解决方案2】:

      您可以使用subset() + lengths()

      subset(d,lengths(x)>2)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-01-23
        • 1970-01-01
        • 1970-01-01
        • 2018-07-03
        • 1970-01-01
        • 1970-01-01
        • 2015-02-15
        • 2019-11-16
        相关资源
        最近更新 更多