我正在尝试编写一个R脚本,该脚本将通过我从excel电子表格导入的数据帧(请参阅下面的格式),并查找每日最大值之和(包括每日最大值)
数据看起来像这样:
5/1/2012 0:00 0
5/1/2012 3:00 1
5/1/2012 6:00 2
5/1/2012 9:00 5
5/1/2012 12:00 3
5/1/2012 15:00 6
5/1/2012 18:00 2
5/1/2012 21:00 1
5/2/2012 0:00 2
5/2/2012 3:00 3
5/2/2012 6:00 6
5/2/2012 9:00 4
5/2/2012 12:00 6
5/2/2012 15:00 7
5/2/2012 18:00 9
5/2/2012 21:00 1
所以我想象的功能会回归:
1 5/1/2012 15:00 17
2 5/2/2012 18:00 35
有什么想法吗?
答案 0 :(得分:0)
这是对@Thierry在上一个问题中给出的答案的一个非常小的调整
dat.str <- '5/1/2012 0:00 0
5/1/2012 3:00 1
5/1/2012 6:00 2
5/1/2012 9:00 5
5/1/2012 12:00 3
5/1/2012 15:00 6
5/1/2012 18:00 2
5/1/2012 21:00 1
5/2/2012 0:00 2
5/2/2012 3:00 3
5/2/2012 6:00 6
5/2/2012 9:00 4
5/2/2012 12:00 6
5/2/2012 15:00 7
5/2/2012 18:00 9
5/2/2012 21:00 1
'
dat <- read.table(textConnection(dat.str))
library(plyr)
ddply(dat, .(V1), function(x){
sum(x[1:(which.max(x$V3)), "V3"])
})
我还要说你没有表现出任何主动性或任何工作。 编辑@John是的,由于上一个问题已经编辑以反映这一点,OP稍微改变了数据。