【发布时间】:2017-12-12 22:42:28
【问题描述】:
library(tidyverse)
library(nycflights13)
nycflights13::flights
如果以下表达式给出数据集中每天的航班:
daily <- dplyr::group_by( flights, year, month, day)
(per_day <- dplyr::summarize( daily, flights = n()))
我想为取消的航班提供类似的东西:
canx <- dplyr::filter( flights, is.na(dep_time) & is.na(arr_time))
canx2 <- canx %>% dplyr::group_by( year, month, day)
我的目标是拥有与所有汇总航班相同长度的数据框。
我可以获得每天取消的航班数量:
(canx_day <- dplyr::summarize( canx2, flights = n()))
但显然这是一个稍短的数据帧,所以我不能运行例如:
canx_day$propcanx <- per_day$flights/canx_day$flights
即使我引入了 NA,我也可以替换它们。
所以我的问题是,我应该不使用过滤器,还是应该应用过滤器的参数?
非常感谢
【问题讨论】:
-
是否有
Cancelled的列来标记取消的航班?如果是,那么你的工作就轻松多了。