【发布时间】:2019-06-20 08:43:54
【问题描述】:
我想filter 从我的 tibble 的任何组中获取行,其中一个变量与其中一个组的值匹配。
structure(list(type = c("A", "A", "A", "A", "B", "B", "B", "B",
"B"), categ = c("apple", "pear", "apple", "banana", "pear", "kiwi",
"apple", "banana", "mango")), .Names = c("type", "categ"), row.names = c(NA,
-9L), class = c("tbl_df", "tbl", "data.frame"))
# type categ
# <chr> <chr>
# A apple
# A pear
# A apple
# A banana
# B pear
# B kiwi
# B apple
# B banana
# B mango
我想从任何组中获取行,其中categ 是categ 在组 A 中为type 采用的值之一
基本上我想这样做:
df %>%
filter(categ %in% pull(filter(df, type == 'A'), categ))
# type categ
# <chr> <chr>
# A apple
# A pear
# A apple
# A banana
# B pear
# B apple
# B banana
这是一种丑陋的方法,我很确定有更好的方法,但我找不到。
感谢您的帮助,抱歉英语不好。
【问题讨论】: