假设有一个数据框df,其中包含多个分组变量group,以及需要提取最大值对应行的变量var1、var2、var3等。可以通过tidyverse包中的dplyr和tidyr库来解决。
代码示例: library(dplyr) library(tidyr)
df %>% group_by(group) %>% slice(which.max(var1)) %>% select(group, var1, var2, var3) %>% ungroup()
该代码使用group_by按group分组,再使用slice和which.max函数选择每个分组中var1列的最大值所在的行,最后选取group、var1、var2和var3列,并使用ungroup取消分组。
上一篇:按组替换同一列中的值为另一个值。
下一篇:按组提取列中的数据到新列