首页 > 解决方案 > 在 dplyr R 中过滤具有字符变量作为列名的表

问题描述

我正在尝试过滤 R 中的 mtcars 表,引用带有字符变量的列名。所以,我写:

var <- "cyl"
mtcars %>%
  filter(!!var > 6)

但是,由于某种原因,该表没有被过滤。我认为这段代码相当于:

mtcars %>%
  filter("cyl" > 6)

我真正需要的是将该字符串转换为名称。有谁知道如何处理这个问题?

标签: rdplyr

解决方案


这对我有用:

library(dplyr)

var <- sym("cyl")

mtcars %>%
  filter(!!var > 6)

推荐阅读