我有一个名为“ Ak_total”的df,具有3819 obj和93变量。 我想按组(Ak_total $ Year)从6:93计算每列的最大值。
问题是我不仅想获取每一年的每一列的最大值(这很简单),而且要找到出现最大值时的日期/日期(Ak_total $ Date)。
示例:
Year Date BetulaMAX
1998 1998-05-26 42
1999 1999-06-07 32
2000 2000-06-04 173
2001 2001-06-03 113
2002 2002-06-05 65
Year Date GrassMax
1998 1998-08-27 260
1999 1999-08-19 215
2000 2000-08-02 173
2001 2001-08-23 76
2002 2002-08-22 193
我做到了
max value (Peak DATE)
max_all <- function(x) if(length(x))x==max(x)
Ak_max_date_Betula <- subset(Ak_total,!!ave(Betula, Year, FUN=max_all))
但是我只得到一列(Betula)的最大值和数据。
是否有可能一次对所有列执行该操作?