我有一个名为result1的数据框,其中只有一列使用“ pneumonia”
outcome1 <- data.frame(Pneumonia = sample(0:1, size = 5, replace = TRUE))
我创建了一个名为best1的函数,该函数仅使用名为“ var_”的参数打印该列
best1 <- function(var_) {
outcome1$var_
}
当我调用函数
best1("Pneumonia")
我得到一个NULL值
但是当我使用时:
outcome1$Pneumonia
我得到了我需要的数据。我如何使用best1函数并使用列名作为参数来获得正确的结果,如果该列的名称中有空格(我知道您在这种情况下使用“''),该怎么办?在函数中使用它会是什么情况,谢谢您的帮助
答案 0 :(得分:2)
有一种更好的方法来编写函数。
best1 <- function(var_) {
outcome1[[var_]]
}
有关使用该运算符的有效输入,请参见?$
。您的函数正在寻找变量名“ var_”,而不是绑定到该名称的字符串。