PDF 96 / 520 #> 6 AUS 6 #> # ... with 98 more rows
English · PDF 96
Original PDF page 96
中文 · PDF 96

#> 6 AUS 6 #> # ... 还有 98 行

计数非常有用,因此 dplyr 提供了一个简单的辅助函数,如果你只想计数的话:

not_cancelled %>% count(dest) #> # A tibble: 104 × 2 #> dest n #> #> 1 ABQ 254 #> 2 ACK 264 #> 3 ALB 418 #> 4 ANC 8 #> 5 ATL 16837 #> 6 AUS 2411 #> # ... 还有 98 行

你还可以选择提供一个权重变量。例如,你可以用它来“计数”(求和)一架飞机飞行的总英里数:

not_cancelled %>% count(tailnum, wt = distance) #> # A tibble: 4,037 × 2 #> tailnum n #> #> 1 D942DN 3418 #> 2 N0EGMQ 239143 #> 3 N10156 109664 #> 4 N102UW 25722 #> 5 N103US 24619 #> 6 N104UW 24616 #> # ... 还有 4,031 行

逻辑值的计数与比例 sum(x > 10), mean(y == 0)

当与数值函数一起使用时,TRUE 会被转换为 1,FALSE 会被转换为 0。这使得 sum() 和 mean() 非常有用:sum(x) 给出 x 中 TRUE 的数量,而 mean(x) 给出比例:

# 有多少航班在早上 5 点前起飞?(这些通常 # 表示前一天延误的航班) not_cancelled %>% group_by(year, month, day) %>% summarize(n_early = sum(dep_time < 500)) #> Source: local data frame [365 x 4] #> Groups: year, month [?]