10

Rの組み込みのToothGrowthサンプルデータセットを使用すると、これは機能します。

ddply(ToothGrowth, .(supp,dose), function(df) mean(df$len)) 

しかし、サブセット化要素を変数にしたいのですが、

factor1 = 'supp'
factor2 = 'dose'
ddply(ToothGrowth, .(factor1,factor2), function(df) mean(df$len)) 

それはうまくいきません。これはどのように行う必要がありますか?

私はおそらくこのようなことを考えました:

factorCombo = paste('.(',factor1,',',factor2,')', sep='') 
ddply(ToothGrowth, factorCombo, function(df) mean(df$len)) 

しかし、それも機能しません。私は近くにいると思いますが、それを行う適切な方法がわかりません。コマンド全体を文字列に入れてから、文字列のeval()呼び出しを行うことができると思いますが、もっとエレガントな方法があるといいのですが。

4

1 に答える 1

8

試す:

x <- c("supp", "dose") 
ddply(ToothGrowth, x, function(df) mean(df$len)) 
于 2010-09-24T04:44:09.253 に答える