MaxVal=aggregate(test$a,by=list(Date=test$OF_DATE),FUN=max OF_Date是一个日日期为五年的列,因此当我使用上述函数时,我从所有日期得到'a‘的最大值,但我需要每个月的最大值'a’。
Date a
2008-01-15 25
2008-01-29 10
2008-01-30 30
2008-02-02 15
2008-02-09 45
2008-03-05 60
2008-03-29 55当我运行这个函数时,我的输出是
2008-03-05 60但我需要我的输出
2008-01-30 30
2008-02-09 45
2008-03-05 60我该怎么做呢。把日期分开,也就是几个月,然后比较?
发布于 2014-08-15 20:05:44
下面是一种使用format将日期缩短为年月日的解决方案。下面是对聚合的调用。
dat <- read.table(header=TRUE, text=
"Date a
2008-01-15 25
2008-01-29 10
2008-01-30 30
2008-02-02 15
2008-02-09 45
2008-03-05 60
2008-03-29 55")
dat$Date <- as.Date(dat$Date)
dat$Month <- format(dat$Date, "%Y-%m")
aggregate(a ~ Month, data=dat, max)https://stackoverflow.com/questions/25333121
复制相似问题