函数中的ddply参数

时间:2014-07-24 13:12:29

标签: r plyr igraph

我想在函数中使用ddply并将参数传递给外部函数。

因此我需要能够做这样的事情

ddply_wrapper <- function(x,byCol,cols){
    return(ddply(x,.(byCol),freq=length(x),cols))
}

library(ggplot2)
ddply_wrapper(diamonds,byCol="color",cols=c("av_price=mean(price)","m_depth=median(depth)"))

并获得此输出

  color cases av_price m_depth
1     D  6775 3169.954    61.8
2     E  9797 3076.752    61.8
3     F  9542 3724.886    61.8
4     G 11292 3999.136    61.8
5     H  8304 4486.669    61.9
6     I  5422 5091.875    61.9
7     J  2808 5323.818    62.0

但我不知道如何传递外部函数的cols参数,因此它像内部ddply函数的参数一样执行

我检查了do.call,但在这种情况下我不知道如何使用它。

顺便说一下,这个用例是一个允许按特定节点属性折叠igraph对象的函数。我知道igraph中已经有类似的东西了,但是ddply处理这个的方式真是太棒了!

0 个答案:

没有答案