【发布时间】:2012-11-17 11:38:46
【问题描述】:
我有一个如下所示的数据框:
pred1 pred2 pred3 exp
a b c 0
a d c 0
a b c 1
我想做的是首先获取pred1-3的所有唯一组合,将它们写入一个附加表,为每个组合的频率添加一列,并添加另一列给出值1的比例每个组合的 exp(只能是 0 或 1)。像这样的:
pred1 pred2 pred3 freq exp_prop
a b c 2 0.5
a d c 1 0
事实证明,使用 plyr 的前三个步骤非常简单:
ddply(df, .(pred1, pred2, pred3), summarise, freq=length(exp))
或更短
count(df[,c(pred1, pred2, pred3)])
但我就是不知道如何得到 exp 的比例。
【问题讨论】: