R-dplyr。变量类似于数据框列的函数

时间:2019-09-27 15:52:43

标签: r dplyr

在这种情况下,我正在对函数中的数据框进行过滤,但是该数据框具有与要过滤的变量名称相似的列。

示例:

d = tibble(cond = c(1,2), b = c(1,2))

f_ = function(data, cond) {
  data = data %>% filter(b == cond)
  return(data)
}

f_(d, cond = 2)

# A tibble: 2 x 2
   cond     b
  <dbl> <dbl>
1     1     1
2     2     2

没有过滤发生(因为cond等于b)。

当我不控制数据中的列数,但至少知道它具有b列时,这成为一个问题。

1 个答案:

答案 0 :(得分:1)

我们可以更改功能来评估“ cond”,而不是来自环境

eval()