在R中的函数中使用列

在R中的函数中使用列,r,function,dataframe,R,Function,Dataframe,我有以下代码: library(MASS) data(cars) 我想做的是拉动所有距离为20的车。我知道我可以使用子集: subset(cars,dist == 20) 但是当我尝试创建一个做同样事情的函数时,我总是会出错。以下是我尝试过的: pracfunc = function(dfo,colo){ lo = subset(dfo, colo == 20) return(lo)} 然后 pracfunc(cars, "dist") 但我总是出错。我不知道我做错了什么。看起来很简单。

我有以下代码:

library(MASS)
data(cars)
我想做的是拉动所有距离为20的车。我知道我可以使用子集:

subset(cars,dist == 20)
但是当我尝试创建一个做同样事情的函数时,我总是会出错。以下是我尝试过的:

pracfunc = function(dfo,colo){
lo = subset(dfo, colo == 20)
return(lo)}
然后

pracfunc(cars, "dist")
但我总是出错。我不知道我做错了什么。看起来很简单。谢谢你的帮助,谢谢

pracfunc相同(子集(cars,dist==20),pracfunc(cars,'dist'))
pracfunc <- function(dfo,colo){ dfo[dfo[[colo]] == 20, ] }

> identical(subset(cars,dist == 20), pracfunc(cars, 'dist'))
[1] TRUE
[1] 真的
子集下的警告也许您应该告诉我们错误是什么。从
子集
“警告:这是一个便于交互使用的功能。对于编程,最好使用标准子集功能,如[,尤其是参数子集的非标准评估可能会产生意想不到的后果。”