我正在处理简单问题,但无法找到如何在R中实现简单聚合。 我想要计数数据中每个类别(ID)的行数用下面的例子设置:R - 如何计算数据集中的行按类别
Date Col1 Col2 ID
21/01/2003 1 2 1
27/01/2003 3 6 2
28/01/2003 4 5 2
29/01/2003 5 6 3
30/01/2003 1 0 2
我试过了*应用函数没有运气。最接近的答案我能得到我的问题是使用聚合函数:
aggregate(fact, by=list(fact$ID), FUN=length)
的问题是,它显示在一个数据集,而不是仅仅ID &计数的所有列。我怎样才能让它变得更好。
Group.1 Date Col1 Col2 ID
1 1 117 117 117 117
2 2 1041 1041 1041 1041
3 3 243 243 243 243
4 4 474 474 474 474
理想:我想ID重命名为分类和计数成卷,所以它看起来是这样的:
Category Volume
1 117
2 1041
3 243
4 474
更新:
- 我已经安装了 “plyr” & “data.table”包。而且这两种解决方案都很好。
- 如何使用开箱即用实现相同的解决方案R?
感谢josilber为即时答复。我收到一个错误:找不到函数“setnames”。 – 2014-09-24 19:00:16
@BIDude对不起,这是'data.table'包中的函数......来自R的一个是'setNames'。我已经更新了答案。 – josliber 2014-09-24 19:06:31
所有工作正常。谢谢。 – 2014-09-24 19:19:50