Найти число наблюдений до 1-го появления условия в другой переменной в R - PullRequest
0 голосов
/ 19 мая 2018

Я пытаюсь ответить на вопрос 5.7.1.8 из R Хэдли Уикхема для Data Science:

Для каждого самолета подсчитайте количество рейсов до первой задержки, превышающей 1 час.

Есть 4 044 уникальных хвостовых, как показано ниже:

 flights %>% 
   group_by(tailnum) %>%
   summarise(flights = n())
# A tibble: 4,044 x 2
   tailnum flights
   <chr>     <int>
 1 D942DN        4
 2 N0EGMQ      371
 3 N10156      153
 4 N102UW       48
 5 N103US       46
 6 N104UW       47
 7 N10575      289
 8 N105UW       45
 9 N107US       41
10 N108UW       60
# ... with 4,034 more rows

Ниже я могу видеть, когда критерии условий были выполнены:

flights %>%
   group_by(year, month, day, tailnum, arr_delay) %>%
   summarise(first_60_plus_delay = first(arr_delay > 60)) %>%
   arrange(tailnum)
# A tibble: 332,316 x 6
# Groups:   year, month, day, tailnum [251,727]
    year month   day tailnum arr_delay first_60_plus_delay
   <int> <int> <int> <chr>       <dbl> <lgl>              
 1  2013     2    11 D942DN         91 TRUE               
 2  2013     3    23 D942DN         44 FALSE              
 3  2013     3    24 D942DN          2 FALSE              
 4  2013     7     5 D942DN        -11 FALSE              
 5  2013     1     1 N0EGMQ         17 FALSE              
 6  2013     1     1 N0EGMQ         67 TRUE               
 7  2013     1     2 N0EGMQ         -6 FALSE              
 8  2013     1     2 N0EGMQ         11 FALSE              
 9  2013     1     4 N0EGMQ         -2 FALSE              
10  2013     1     5 N0EGMQ        -15 FALSE              
# ... with 332,306 more rows

Как мы теперь отфильтровываем происходящие ЛОЖНЫЕ случаипосле TRUE для каждого Tailnum?Помощь будет оценена.

Приветствия,

Роб

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...