我正在尝试编写一个自定义函数,我想在其中使用该cor.test
函数,但我无法取消引用创建工作公式所需的参数。
这是我目前无法使用的东西-
library(rlang)
# custom function
tryfn <- function(data, x, y) {
stats::cor.test(
formula = rlang::new_formula(NULL, {{ x }} + {{ y }}),
data = data,
method = "pearson"
)
}
# using the function
tryfn(mtcars, wt, mpg)
#> Error in rlang::new_formula(NULL, {: object 'wt' not found
我尝试了这种方式,因为如果我不必在函数环境中取消引用公式,它似乎可以工作。
# without unquoting inside another function
print(rlang::new_formula(NULL, quote(x + y)))
#> ~x + y
关于如何实现这一点的任何想法?