简体   繁体   中英

How to combine data points in a data frame in R?

The data frame x has a column in which the values are periodic. For each unique value in that column, I want to calculate summation of the second column. If x is something like this:

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

The output I want is the following data frame:

a b
1 9 
2 10

如下使用aggregate将获得您想要的结果

aggregate(b ~ a, x, sum)

Here is the option with 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 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM