0

数据框是

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这样的答案

4

1 回答 1

1

您可以使用cutaggregate

> 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))。

于 2013-10-21T04:43:38.490 回答