PDF 101 / 520 Exercises
English · PDF 101
Original PDF page 101
中文 · PDF 101
#> 2 2013 1 1 IAH 20 2.01e-04
#> 3 2013 1 1 MIA 33 2.35e-04
#> 4 2013 1 1 ORD 12 4.24e-05
#> 5 2013 1 1 FLL 19 9.38e-05
#> 6 2013 1 1 ORD 8 2.83e-05

分组过滤器是先进行分组 mutate,再进行未分组的过滤。除了快速而粗糙的操作外,我通常避免使用它们:否则很难检查你的操作是否正确。

最自然地适用于分组 mutate 和过滤的函数被称为窗口函数(与用于汇总的摘要函数相对)。你可以在相应的 vignette 中了解更多有用的窗口函数:vignette("windowfunctions").

练习

    1. 回顾一下有用的 mutate 和过滤函数表。描述当你将这些操作与分组结合使用时,每个操作会发生怎样的变化。
    1. 哪架飞机(tailnum)的正点记录最差?
    1. 如果你想尽可能避免延误,应该选择一天中的什么时间飞行?
    1. 对于每个目的地,计算延误的总分钟数。对于每个航班,计算其占该目的地总延误的比例。
    1. 延误通常在时间上是相关的:即使导致最初延误的问题已经解决,后续航班也会延误,以便让较早的航班先起飞。使用 lag() 来探究一个航班的延误与其紧邻前一个航班的延误之间的关系。
    1. 查看每个目的地。你能找到快得可疑的航班吗?(即可能代表数据录入错误的航班。)计算每个航班的飞行时间相对于飞往该目的地最短飞行时间的比值。哪些航班在空中延误的时间最长?