Пример данных:
df <- data.frame(loc.id = rep(1:2, each = 11),
x = c(35,51,68,79,86,90,92,93,95,98,100,35,51,68,79,86,90,92,92,93,94,94))
Для каждого loc.id
я хочу отфильтровать x <= 95
.
df %>% group_by(loc.id) %>% filter(row_number() <= which.max(x >= 95))
loc.id x
<int> <dbl>
1 1 35
2 1 51
3 1 68
4 1 79
5 1 86
6 1 90
7 1 92
8 1 93
9 1 95
10 2 35
Однако для группы 2 все значения меньше 95. Поэтому я хочу сохранить все значения x
для группы 2. Однако вышеприведенная строка этого не делает.