第 5 章 分群分析

group cases
依不同航空公司(carrier)計算出發延遲平均及標準差

flights %>% group_by(carrier) %>%
  summarise(平均出發延遲=mean(dep_delay,na.rm=T),出發延遲SD=sd(dep_delay,na.rm=T))
## # A tibble: 16 x 3
##    carrier 平均出發延遲 出發延遲SD
##      <chr>        <dbl>      <dbl>
##  1      9E       16.726      45.91
##  2      AA        8.586      37.35
##  3      AS        5.805      31.36
##  4      B6       13.023      38.50
##  5      DL        9.265      39.74
##  6      EV       19.955      46.55
##  7      F9       20.216      58.36
##  8      FL       18.726      52.66
##  9      HA        4.901      74.11
## 10      MQ       10.552      39.18
## 11      OO       12.586      43.07
## 12      UA       12.106      35.72
## 13      US        3.782      28.06
## 14      VX       12.869      44.82
## 15      WN       17.712      43.34
## 16      YV       18.996      49.17

group_by也可以用在多重的分組。
依不同航空公司(carrier)計算出發延遲平均及標準差

flights %>% group_by(carrier, month) %>%
  summarise(平均出發延遲=mean(dep_delay,na.rm=T),出發延遲SD=sd(dep_delay,na.rm=T))
## # A tibble: 185 x 4
## # Groups:   carrier [?]
##    carrier month 平均出發延遲 出發延遲SD
##      <chr> <int>        <dbl>      <dbl>
##  1      9E     1       16.883      47.63
##  2      9E     2       16.486      50.48
##  3      9E     3       13.408      43.00
##  4      9E     4       13.567      43.84
##  5      9E     5       22.672      50.63
##  6      9E     6       28.953      55.37
##  7      9E     7       31.399      60.37
##  8      9E     8       17.297      42.76
##  9      9E     9        7.754      34.31
## 10      9E    10        9.334      33.76
## # ... with 175 more rows

練習: 算出不同入學年(入學年)成績資料(transcript.data.new2)中成績平均及標準差

transcript.data.new2 %>% group_by(入學年) %>%
  summarise(平均=mean(成績,na.rm=T),標準差=sd(成績,na.rm=T))
## # A tibble: 5 x 3
##   入學年  平均 標準差
##   <fctr> <dbl>  <dbl>
## 1    097 76.92  14.55
## 2    098 77.26  14.14
## 3    099 76.06  13.89
## 4    100 70.78  15.72
## 5    101 76.87  15.02