Я хотел бы найти первую строку значения, но только когда это происходит после другого значения.У меня есть набор данных временных рядов использования ящика с птичьим гнездом, и для каждого ящика я хотел бы отфильтровать строку, когда ящик впервые освобождается после того, как был занят.Вот упрощенный пример данных:
# A tibble: 20 x 3
NestID Date Status
<chr> <date> <chr>
1 WA18 2019-02-01 Empty
2 WA18 2019-02-02 Empty
3 WA18 2019-02-03 Empty
4 WA18 2019-02-04 Occupied
5 WA18 2019-02-05 Occupied
6 WA18 2019-02-06 Occupied
7 WA18 2019-02-07 Empty
8 WA18 2019-02-08 Empty
dat <- structure(list(NestID = c("WA18", "WA18", "WA18", "WA18", "WA18",
"WA18", "WA18", "WA18", "WA18", "WA20", "WA20", "WA20", "WA20",
"WA20", "WA20", "WA20", "WA20", "WA20", "WA20", "WA20"), Date = structure(c(17928,
17929, 17930, 17931, 17932, 17933, 17934, 17935, 17936, 17555,
17556, 17557, 17558, 17559, 17560, 17561, 17562, 17563, 17564,
17565), class = "Date"), Status = c("Empty", "Empty", "Empty",
"Occupied", "Occupied", "Occupied", "Empty", "Empty", "Empty",
"Empty", "Empty", "Empty", "Empty", "Empty", "Empty", "Occupied",
"Occupied", "Empty", "Empty", "Empty")), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -20L))
Итак, для гнезда WA18 я хочу отфильтровать строку, где дата 2019-02-07 (поле сначала считается пустым после заполнения).Не совсем уверен, что лучше всего индексировать эту строку, но я бы хотел использовать для этого dplyr.