为什么在函数中使用ddply时会出现找不到参数的问题?

时间:2019-08-29 16:00:28

标签: r function plyr

我想将ddply传递到一个函数中以创建数据汇总表。我函数中的参数之一是指我要ddply汇总的变量。但是,当我尝试使用创建的函数时,它告诉我即使指定了变量也找不到该变量。

我尝试制作仅使用summarise()的函数,但这并不能很好地工作,因为我只能group_by一个变量,并且需要按两个变量分组。另外,我遇​​到了与使用ddply时相同的错误。

这是我通过一些虚拟数据得到的错误的简单示例。

数据框

strain<-c("a","a","a","b","b","b")
chamber<-c(1,1,1,2,2,2)
bending<-c(10,20,30,40,50,60)

df<-data.frame(Strain=factor(strain),Chamber=factor(chamber),Bending=bending)

功能

make_summary<-function(data, group, metric){
  my_table<-ddply(data, group, summarise,
                  N = length(metric),
                  Mean=mean(metric))
  kable(my_table)
}

测试

make_summary(df,c("Strain","Chamber"), Bending)

错误

Error: object 'Bending' not found

这不是我想要得到的错误。我希望结果是我分组数据的汇总表。

0 个答案:

没有答案