Мы могли бы использовать which
, чтобы получить индекс строки, где NP == 0
, и добавить 1 к нему, чтобы получить следующую строку.
df[which(df$NP == 0) + 1, ]
# Subject tdif NP
#2 KM3 4.6 1
#4 KM3 30.4 1
#6 KM3 12.1 1
#9 KM3 38.0 1
Если у вас есть 0 в вашей последней строке, это может дать вамдополнительная строка с NA
s, которую можно удалить, сравнив значения с nrow(df)
или используя dplyr::lag
.
с dplyr
lag
library(dplyr)
df %>% filter(lag(NP) == 0)