ddply电话中的prop.table

时间:2012-06-26 03:53:08

标签: r plyr

所以这是一个简单的问题,我不清楚这个plyr电话出了什么问题。

library(plyr)

一些具有二项式结果的愚蠢数据(y1)和两个四级分类因子(x1x2):

df <- data.frame(x1 = sample(letters[1:4], 4000,T),
                 x2 = sample(LETTERS[5:8], 4000,T),
                 y1 = rbinom(n=4000,1,.5))

我想要一张表格,其中包含每个结果的行比例 - 我认为以下内容可行

foo <- ddply(df, .(x1,x2), function(i) prop.table(table(i$y1),1))

但它给了我:

head(foo)

  x1 x2 0 1
1  a  E 1 1
2  a  F 1 1
3  a  G 1 1
4  a  H 1 1
5  b  E 1 1
6  b  F 1 1

这显然不是我想要的。我的遗漏是什么?

1 个答案:

答案 0 :(得分:4)

foo<-ddply(df, .(x1,x2), function(i) prop.table(table(i$y1)))

> head(foo)
  x1 x2         0         1
1  a  E 0.5365854 0.4634146
2  a  F 0.4936170 0.5063830
3  a  G 0.5176471 0.4823529
4  a  H 0.4568966 0.5431034
5  b  E 0.4780702 0.5219298
6  b  F 0.5617530 0.4382470

不确定那是不是你想要什么