r - 如何使用多种模式在 R 中执行 filter_all
问题描述
我需要帮助在 R 中过滤整个数据帧中的一组值。我正在使用 filter_all 它适用于单个值,但是当我使用向量时,它会失败。生成的数据框不应包含来自模式的任何值。请帮忙。
patterns <-c(-1,-2,-3,-4)
data %>% filter_all(any_vars(. !=patterns))
解决方案
使用any_vars(! . %in% patterns)
. ==
并且!=
是元素方面的,将第一个元素与第一个元素进行比较,将第二个元素与第二个元素进行比较,等等(如果长度不匹配,则进行回收)。 %in%
像集合操作一样工作。比较1:4 == c(1, 3)
与1:4 %in% c(1, 3)
:
1:4 == c(1, 3)
# [1] TRUE FALSE FALSE FALSE
1:4 %in% c(1, 3)
# [1] TRUE FALSE TRUE FALSE
推荐阅读
- python - 如何将数据帧的行转换为特征向量?
- android - 如何自定义 Android 应用共享的文本
- acumatica - 当文本框设置为多行时,我无法再更改文本框的高度和宽度
- python - 如果没有找到 NULL 列,如何取消查询并显示错误?
- python - 打印后如何在 Python 中打印粗体(df.tostring())
- java - 如何在 Heroku 上与 Node.js 应用程序并行运行 Java 11 .jar 文件?
- javascript - 从 Word 复制到 Wordpress TinyMCE 时替换 HTML 标记
- ios - 如何自动重新加载表视图数据源
- python - 为什么我的变量不会在 while 循环中增加另一个指定的变量?
- c# - 为什么当我在 C# Forms 中添加更多字符时,绘制的字符串会发生变化?