数据帧x具有其中值是周期性的列。对于该列中的每个唯一值,我想计算第二列的总和。如果x是这样的:
x <- data.frame(a=c(1:2,1:2,1:2),b=c(1,4,5,2,3,4))
a b
1 1 1
2 2 4
3 1 5
4 2 2
5 1 3
6 2 4
我想要的输出是以下数据框:
a b
1 9
2 10
如下使用aggregate
将获得您想要的结果
aggregate(b ~ a, x, sum)
这是dplyr
的选项
library(dplyr)
x %>%
group_by(a) %>%
summarise(b = sum(b))
# A tibble: 2 x 2
# a b
# <int> <dbl>
#1 1 9.00
#2 2 10.0