提取范围内变量的最大值

问题描述 投票:-1回答:1

我有一个包含一系列变量的数据框,如下所示:

Name <- paste(letters[1:26])
Time1 <- runif(n = 26, min = 0,max= 500)
Time2 <- runif(n =26, min = 0,max= 500)
V4 <- runif(n = 26, min = 0, max = 1000 )
df <- data.frame(Name, Time1,Time2, V4)

我想找到存在于Time1Time2特定范围内的V4的最大值。例如,我将检查Time 1 >=0Time2 <= 10Time1 >= 10Time2 <= 20Time1 >=20Time2 <=30等等存在的所有数据,并找到V4的最大值,并在这些范围内找到相应的Name

有没有人对如何做到这一点有任何建议?

r dataframe range max intervals
1个回答
0
投票
  • 对于每对时间边界,使用例如子帧选择数据帧。 df2 <- df[(df$Time1>=0) & (df$Time1<10), ]
  • 将它与which.max和列选择结合起来得到行索引: idx <- which.max(df2$V4)
  • df2[idx, 'Name']应该给你你想要的东西。
© www.soinside.com 2019 - 2024. All rights reserved.