在r中使用funct()和aggregate()及其选择错误的数据集

在r中使用funct()和aggregate()及其选择错误的数据集,r,R,Gross Loss是DatasetOne中的一列,也是DataSetwo、Three等中的一列 年龄是DatasetOne中的一列,也是DataSetwo、Three等中的一列 这是我使用的函数 ag <- function (x,y,z,d) { aggregate(x ~ y, FUN=z, data=d) } ag我们需要使用粘贴和公式 ag <- function (x,y,z,d){ aggregate(as.formula(paste(x, y, sep="~"

Gross Loss是DatasetOne中的一列,也是DataSetwo、Three等中的一列 年龄是DatasetOne中的一列,也是DataSetwo、Three等中的一列

这是我使用的函数

ag <- function (x,y,z,d)
{
 aggregate(x ~ y, FUN=z, data=d)
}

ag我们需要使用
粘贴
公式

ag <- function (x,y,z,d){
  aggregate(as.formula(paste(x, y, sep="~")), data=d, FUN = z)
}

你也可以这样做
match.call
将计算函数中的所有参数。然后,您可以使用数据帧d进行求值

ag <- function (x,y,z,d)
{
    arguments <- as.list(match.call())
    x = eval(arguments$x, d)
    y = eval(arguments$y, d)
    aggregate(x ~ y, FUN = z, d)       
}
ag <- function (x,y,z,d){
  aggregate(as.formula(paste(x, y, sep="~")), data=d, FUN = z)
}
ag('GrossLoss', 'Age', mean, DatasetOne)
ag <- function (x,y,z,d)
{
    arguments <- as.list(match.call())
    x = eval(arguments$x, d)
    y = eval(arguments$y, d)
    aggregate(x ~ y, FUN = z, d)       
}
ag(x, y, mean, d)