【发布时间】:2016-01-17 14:45:17
【问题描述】:
我有一个如下所示的数据框:
> year<-c(2014,2014,2014,2015,2015,2015,2016,2016,2016)
> group<-c("A","B","C","A","B","C","A","B","C")
> n<-c(1,1,1,1,2,0,2,1,1)
> df<-data.frame(year=year,group=group,n=n)
> df
year group n
2014 A 1
2014 B 1
2014 C 1
2015 A 1
2015 B 2
2015 C 0
2016 A 2
2016 B 1
2016 C 1
我想为每个组创建一个包含 n 的累积值的列,以具有如下内容:
year group n sum
2014 A 1 1
2014 B 1 1
2014 C 1 1
2015 A 1 2
2015 B 2 3
2015 C 0 1
2016 A 2 4
2016 B 1 4
2016 C 1 2
【问题讨论】:
-
transform(df, sum = ave(n, group, FUN = cumsum))
标签: r