【发布时间】:2018-01-23 02:50:04
【问题描述】:
G= c("P52" ,"P52","P66 - PARK II","P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P82 V3","P82 V3","P82 V3","P52","P52","P66 - PARK II" ,"P66 - PARK II" ,"P82 V3","P66 - PARK II" ,"P66 - PARK II" ,"P82 V3","P82 V3" ,"P88","P88","P88","P52","P82 V3","P66 - PARK II" ,"P66 - PARK II" ,"P82 V3","P52","P88","P88","P52" ,"P88","P82 V3","P88","P82 V3","P82 V3","P82 V3","P88","P88","P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P88","P66 - PARK II" ,"P88" ,"P52","P52","P52","P52","P52","P52","P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II","P88","P82 V3","P82 V3","P88","P88","P66 - PARK II" ,"P66 - PARK II" ,"P52","P52","P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II","P66 - PARK II" ,"P82 V3","P66 - PARK II" ,"P82 V3","P88","P82 V3","P88","P88","P66 - PARK II","P82 V3","P82 V3" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P82 V3","P88","P88","P82 V3","P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P66 - PARK II" ,"P88" ,"P66 - PARK II" ,"P66 - PARK II","P66 - PARK II" )
GA = runif(100, min=20, max=50)
GL = runif(100, min=20, max=50)
df=data.frame(G=G,GA=GA,GL=GL)
df$Sq <- seq(1:nrow(df))
library(MASS)
library(dplyr)
by_G<- group_by(df,G)
fg1 <- summarise(by_G,
Row_Index1=row_number(which.max(GA)),
Row_Index2=row_number(which.max(GL)),
n=n())
上面是可重现的代码,我正在尝试提取列GA在组内具有最大值的行ID号。
【问题讨论】:
-
由于
GA是一个分组变量,我不明白你为什么要在组中找到它的最大值。在每个组中,GA是一个常量。 -
我同意 Sven 的观点,通常你会这样做
fg1 %>% slice(which.max(GA)),但在这种情况下,它只会给你每个组中的第一行,因为你是按GA分组的。 -
@SvenHohenstein 我的错误数据上传了,现在数据是按照问题陈述的,谢谢先生纠正我
-
@Axeman 我在这里尝试了
which.max的相同代码,我不想要拳头行,我想要 GL 在 G 组中具有最大值的行号 -
你能提供一个表格来显示你想要得到的实际值吗?从描述上看不是很清楚。
标签: r group-by dplyr row-number