R 用ddply计算比例

R 用ddply计算比例,r,plyr,R,Plyr,我试图找到每个ICPSR的主题比例。数据如下所示 ICPSR date day month year mention topic 169538 15444 2009-06-02 2 June 2009 1 18 169544 15444 2010-03-02 2 March 2010 1 20 169581 15444 2010-09-30 30 September 201

我试图找到每个ICPSR的主题比例。数据如下所示

           ICPSR       date day     month year mention topic
   169538 15444 2009-06-02   2      June 2009       1    18
   169544 15444 2010-03-02   2     March 2010       1    20
   169581 15444 2010-09-30  30 September 2010       1    18
   169609 15444 2009-06-03   3      June 2009       1     1
   169729 20909 2009-11-17  17  November 2009       1     9
   169791 29317 2009-03-13  13     March 2009       1    13
我试图找到:对于每个ICPSR,每个主题的比例是多少。 为了显示我想要的输出,它如下所示

     ICPSR  topic.1 topic.9 topic.13 topic.18 topic.20  
   1 15444   0.25      0        0       0.5      0.25
   2 20909    0        1        0        0        0
   3 29317    0        0        1        0        0
我试图使用
ddply
,比如:
ddply(c.analyze1,c(“ICPSR”),总结,总结(提及))/ddply(c.analyze1,c(“ICPSR”,“主题”),总结,总结(提及))
。但这找不到我想要的输出


我希望能有任何命令或代码的建议。谢谢大家!

您不需要使用
ddply
。您可以使用
prop.table

如果
df
是您的数据

prop.table(table(df$ICPSR, df$topic), 1)
#       
#           1    9   13   18   20
#  15444 0.25 0.00 0.00 0.50 0.25
#  20909 0.00 1.00 0.00 0.00 0.00
#  29317 0.00 0.00 1.00 0.00 0.00