【发布时间】:2023-10-09 23:12:01
【问题描述】:
对于 R 中的 lm() 之类的函数,您将“数据”参数传递给函数,通常是一个数据框,然后 R 通过名称而不是引用它们来知道所有列。所以区别在于x=column,而不是引用时尚x=df$column。那么如何在我自己的用户定义函数中使用相同的方法呢?
一个简单的例子:
library(tidyverse)
df <- tibble(x=1:100,y=x*(1+rnorm(n=100)))
test_corr <- function(x,y) {
cor(x,y) %>% return()
}
# Right now I would do this
test_corr(df$x,df$y)
# I want to be able to do this
test_corr(data=df, x, y)
【问题讨论】:
-
你能举个例子说明你想到的函数类型以及你想如何调用它吗?
-
如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。
-
@camille 感谢您的反馈,我附上了我正在寻找的示例。
-
@MrFlick 感谢您的反馈,我附上了我正在寻找的示例。
标签: r function arguments user-defined-functions