r - 在 dplyr R 中过滤具有字符变量作为列名的表
问题描述
我正在尝试过滤 R 中的 mtcars 表,引用带有字符变量的列名。所以,我写:
var <- "cyl"
mtcars %>%
filter(!!var > 6)
但是,由于某种原因,该表没有被过滤。我认为这段代码相当于:
mtcars %>%
filter("cyl" > 6)
我真正需要的是将该字符串转换为名称。有谁知道如何处理这个问题?
解决方案
这对我有用:
library(dplyr)
var <- sym("cyl")
mtcars %>%
filter(!!var > 6)
推荐阅读
- javascript - 反弹后更改球的颜色并使球成为图像
- ruby - Rails 5 无法写入 RHEL7 上的 NFS 挂载操作不支持 copy_file_range
- python - 在 Raspberry Pi 3 中使用 Python3.6 安装 PyGObject 失败
- arrays - 创建指向二维数组的指针
- ajax - @ParamConverter 注释找不到 Symfony 5 对象
- reactjs - 文件上传和下载 JavaScript
- python - 如何从数学运算符列表中提取并将其解释为数学运算而不是字符串?
- sql - 获取开始日期和结束日期之间的所有记录 [Asp.Net C# Web 窗体]
- powerbi - 分子取决于过滤器但分母固定的快速计算 (DAX)
- entity-framework - 使用实体框架添加控制器失败 - DbContext 错误