У меня есть следующий набор данных:
ID, diff
1 -40
1 -21
1 -5
1 1
1 6
1 7
...
Переменная ID имеет значения 1,2,3,4,5, ... в то время как diff является числовой переменной c. Теперь из набора данных для каждого идентификатора я хочу извлечь строку с разницей, ближайшей к нулю И отрицательной. Итак, я хочу строку с наибольшим отрицательным значением diff. В приведенном выше наборе данных для идентификатора 1 я хочу извлечь 3 строки со значениями (1 -5).
Следующий код может извлечь строки, абсолютное значение которых ближе всего к 0:
library(dplyr)
dataset22 = dataset1 %>% group_by(ID) %>% slice(which.min(abs(diff)))
Как извлечь строку с отрицательным числом, ближайшим к нулю?
Заранее спасибо!