数据框是
A B
2.3 4.1
1.2 7.6
0.5 3.2
1.5 2.3
我想将A栏分成三组,并总结B栏。 结果将是
X Y
0 3.2
1 9.9
2 4.1
我搜索了这个问题,但只找到了像https://stats.stackexchange.com/questions/8225/how-to-summarize-data-by-group-in-r
这样的答案答案 0 :(得分:1)
您可以使用cut
和aggregate
:
> aggregate(B ~ cut(A, breaks=3), mydf, sum)
cut(A, breaks = 3) B
1 (0.498,1.1] 3.2
2 (1.1,1.7] 9.9
3 (1.7,2.3] 4.1
为了更好地控制,请查看可传递给cut
的许多参数。为了获得更好的输出,您可以创建一个具有“cut”值的新列(以便列名不是cut(A, breaks = 3)
)。