【发布时间】:2021-02-11 00:36:56
【问题描述】:
获取以下小数据框。
df = tribble(
~col1,~col2,~col3,
1,2,3,
4,5,6,
7,8,9
)
我想过滤 ANY 值小于 5 的行。以下不起作用,但这是我最初的想法:
df %>%
filter(across(
.fns = ~.<5
))
然而,输出是
1 , 2 , 3
而不是预期的输出
1 , 2 , 3,
4 , 5 , 6
虽然有不使用across() 和使用filter(col1 < 5 | col2 < 5 | col3 < 5) 过滤的解决方案,但我想了解一种更通用的方法,可以用于all_of() 或everything() 的更大数据集。
要怎么做呢?
【问题讨论】:
-
如果您希望一行中的任何值小于 5,为什么您的预期输出会有一行
4,5,6? 5 和 6 不符合您的标准,对吧?