所以我已经尝试了几天,但我似乎无法解决这个问题。我试图在具有相应日期的列中打印最大值。
我的数据采用以下格式:
Date Time Value
20130811 9:30 12
20130811 9:31 0
20130811 9:32 1
20130812 9:30 8
20130812 9:31 99
20130812 9:32 12
我在之前的帖子中向我建议了以下代码并且部分工作:
max <- ddply(theData,.(Date),summarize, High=max(Value))
产生:
Date Value
20130811 12
20130812 99
我需要代码来产生:
Date Time Value
20130811 9:30 12
20130812 9:31 99
有没有办法在不使用for循环的情况下执行此操作?
感谢您的帮助。
答案 0 :(得分:2)
我将从前一篇文章中回答repeat,这仍然有效:
library(plyr)
ddply(mydata,.(Date),summarize,Time=Time[which.max(Value)],max.value=max(Value))
Date Time max.value
1 20130811 9:30 12
2 20130812 9:31 99