我有一个包含两列(年和降水量)的数据框。在单列中,列出的年份从1900年开始,到2014年结束,再到1900年开始。在另一列中,我具有相应年份的降水值。现在,我想将1900年的所有降水作为1值并将1901年的所有降水作为1加到2014年。我的数据如下:
Year Precipitation
1900 4.826
1901 37.592
2014 14.224
1900 45.974
1901 46.228
2014 79.502
1900 52.578
1901 22.30
2014 15.25
结果应如下所示:
Year Precipitation
1900 103.378
1901 106.12
2014 108.976
到目前为止,我已经编写了代码,但是如果有人可以修复它,它将无法正常工作?
data=read.table('precipitation.csv',header=T,sep=',')
frame=data.frame(data)
cumcum=tapply(frame$Precipitation, cumsum(frame$year==1), FUN=sum, na.rm=TRUE)
谢谢
最佳答案
试试data.table
library(data.table)
frame=fread('precipitation.csv',header=TRUE,sep=',')
frame[, sum(Precipitation), by = Year]
关于r - 在r的数据框中按年份求和,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29361035/