前置準備

1. 下載Dplyr套件

tidyverse套件,包含了dplyrggplot2,與stringr等數據處理常用包

options(scipen = 200)
devtools::install_github("ropenscilabs/icon")
## Skipping install of 'icon' from a github remote, the SHA1 (a5bc1cc9) has not changed since last install.
##   Use `force = TRUE` to force installation
library(tidyverse) # 一次進行下載與載入套件
## Warning: package 'tidyverse' was built under R version 3.6.2
## ── Attaching packages ──────────────────────────────────────────────────────────────────────────────────────────── tidyverse 1.3.0 ──
## <U+2713> ggplot2 3.3.2     <U+2713> purrr   0.3.3
## <U+2713> tibble  2.1.3     <U+2713> dplyr   0.8.3
## <U+2713> tidyr   1.0.0     <U+2713> stringr 1.4.0
## <U+2713> readr   1.3.1     <U+2713> forcats 0.4.0
## Warning: package 'ggplot2' was built under R version 3.6.3
## Warning: package 'forcats' was built under R version 3.6.2
## ── Conflicts ─────────────────────────────────────────────────────────────────────────────────────────────── tidyverse_conflicts() ──
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(readr)

2. 讀取資料

# setwd("~/camp") # 設定環境目錄
load("camp.Rdata") # 不要將字串變數轉換成類別變數

Dplyr介紹

1. 什麼是Dplyr?

  • 六大主要功能:

    函數 說明
    select() 選擇變數
    filter() 篩選出符合條件的變數
    arrange() 依照變數排序資料
    summarise() 聚合函數,對變數做群組運算
    mutate() 新增變數
    group_by() 依照類別變數分組
  • %>%運算子(Pipeline)表示法:兼顧可讀性與精簡的特性


2. Dplyr Cheatsheet

實戰演練

1. %>%運算子

假設今天欲確認df中所提及的縣市是不是真的都包含臺灣現在22縣市。


【一般寫法】

#基礎寫法
a=unique(df$'縣市名稱')  #透過unique()函數,我們可以將資料中樣態不同的資料擷取
a
##  [1] "連江縣" "金門縣" "宜蘭縣" "桃園市" "新竹縣" "苗栗縣" "彰化縣" "南投縣"
##  [9] "雲林縣" "嘉義縣" "屏東縣" "臺東縣" "花蓮縣" "澎湖縣" "基隆市" "新竹市"
## [17] "嘉義市" "臺北市" "高雄市" "新北市" "臺中市" "臺南市"
length(a)
## [1] 22
#進階寫法
length(unique(df$'縣市名稱'))
## [1] 22


%>%進階寫法】

df$'縣市名稱' %>% unique() %>% length()  # 將兩步驟直接合併為一步驟
## [1] 22


【小結】

一般寫法 進階寫法 %>%寫法
優點 易讀性高 效率高 易讀又高效
缺點 效率差 不好閱讀 沒學過看不懂

2. select()

說明:選擇變數


【基礎篇】

眾多欄位中只看年分、縣市名稱、遷入/遷出人口數

df %>% dplyr::select(year ,'縣市名稱','遷入人口數','遷出人口數') %>% 
  head(10) # 只看前十筆資料
##    year 縣市名稱 遷入人口數 遷出人口數
## 1   100   連江縣        187        152
## 2   100   連江縣         71         72
## 3   100   連江縣         76         72
## 4   100   連江縣         70         60
## 5   100   連江縣         33         31
## 6   100   連江縣         20         18
## 7   100   連江縣         27         27
## 8   100   連江縣         10         11
## 9   100   連江縣          9         19
## 10  100   連江縣         69         39

3. filter()

說明:篩選條件變數


【基礎篇】

找出104~106年間新竹縣的資料

df %>% filter(year>104,year<=106,縣市名稱 == "高雄市") %>% head(25)
##    year     村里代碼 縣市代碼 縣市名稱 鄉鎮市區代碼 鄉鎮市區名稱 村里名稱
## 1   105 64000010-001    64000   高雄市     64000010       鹽埕區   藍橋里
## 2   105 64000010-002    64000   高雄市     64000010       鹽埕區   慈愛里
## 3   105 64000010-003    64000   高雄市     64000010       鹽埕區   博愛里
## 4   105 64000010-004    64000   高雄市     64000010       鹽埕區   壽星里
## 5   105 64000010-005    64000   高雄市     64000010       鹽埕區   中山里
## 6   105 64000010-006    64000   高雄市     64000010       鹽埕區   教仁里
## 7   105 64000010-007    64000   高雄市     64000010       鹽埕區   新樂里
## 8   105 64000010-008    64000   高雄市     64000010       鹽埕區   中原里
## 9   105 64000010-009    64000   高雄市     64000010       鹽埕區   光明里
## 10  105 64000010-010    64000   高雄市     64000010       鹽埕區   育仁里
## 11  105 64000010-011    64000   高雄市     64000010       鹽埕區   河濱里
## 12  105 64000010-012    64000   高雄市     64000010       鹽埕區   沙地里
## 13  105 64000010-013    64000   高雄市     64000010       鹽埕區   南端里
## 14  105 64000010-014    64000   高雄市     64000010       鹽埕區   港都里
## 15  105 64000010-015    64000   高雄市     64000010       鹽埕區   江西里
## 16  105 64000010-016    64000   高雄市     64000010       鹽埕區   新豐里
## 17  105 64000010-017    64000   高雄市     64000010       鹽埕區   府北里
## 18  105 64000010-018    64000   高雄市     64000010       鹽埕區   陸橋里
## 19  105 64000010-019    64000   高雄市     64000010       鹽埕區   瀨南里
## 20  105 64000010-020    64000   高雄市     64000010       鹽埕區   新化里
## 21  105 64000010-021    64000   高雄市     64000010       鹽埕區   江南里
## 22  105 64000020-001    64000   高雄市     64000020       鼓山區   鼓峰里
## 23  105 64000020-002    64000   高雄市     64000020       鼓山區   雄峰里
## 24  105 64000020-003    64000   高雄市     64000020       鼓山區   前峰里
## 25  105 64000020-004    64000   高雄市     64000020       鼓山區   光榮里
##    自然增加人數 社會增加人數 總增加人數 遷入人口數 遷出人口數
## 1            -5           -6        -11         89         92
## 2            -4           -4         -8         12         16
## 3            -4            9          5         35         27
## 4            -9           24         15         96         78
## 5           -16          -15        -31         41         57
## 6           -13          -68        -81         83        139
## 7            -2          -18        -20         38         53
## 8            -2          -24        -26         25         50
## 9            -7            1         -6         76        125
## 10           -3            2         -1         59         58
## 11           -5           -5        -10         70         81
## 12            0           -9         -9         41         45
## 13           -9          -16        -25         44         63
## 14          -13          -49        -62         55         98
## 15           -9          -12        -21         54         67
## 16            1           -2         -1         52         38
## 17          -17           19          2        175        147
## 18          -11          -20        -31         44         59
## 19           -5            0         -5         46         44
## 20            2          -23        -21         32         50
## 21           -2          -24        -26         30         50
## 22           -6            3         -3         71         77
## 23          -12          -60        -72         76        116
## 24           -8          -58        -66        156        176
## 25          -24           -6        -30        102        118
##    鄉鎮區內住址變更之遷入人口數 鄉鎮區內住址變更之遷出人口數 粗出生率 粗死亡率
## 1                            14                           17     4.48     7.68
## 2                            10                           10     2.74    13.72
## 3                            11                           10     4.14     9.66
## 4                            29                           23     5.33    11.32
## 5                            24                           23     2.50    15.86
## 6                            25                           37     3.81     9.32
## 7                            10                           13     7.24     9.31
## 8                            17                           16     1.47     4.40
## 9                            88                           38     5.17     9.69
## 10                            7                            6     3.37     6.74
## 11                           25                           19     5.26     7.89
## 12                           26                           31     7.65     7.65
## 13                           23                           20     4.42    12.37
## 14                           27                           33     5.61    16.03
## 15                           18                           17     8.19    15.55
## 16                            7                           23    11.22    10.20
## 17                           57                           66     5.66    13.69
## 18                           21                           26     2.15    10.01
## 19                            6                            8     7.55    15.09
## 20                            2                            7     5.78     2.89
## 21                            3                            7     8.21    10.94
## 22                           45                           36     4.48     7.17
## 23                           68                           88     4.96    10.37
## 24                           95                          133     6.98     8.67
## 25                           96                           86     5.03    11.06
##    自然增加率 社會增加率 粗結婚率 粗離婚率 出生登記-性比率 老年人戶數
## 1       -3.20      -3.84     5.12     2.56            75.00        175
## 2      -10.97     -10.97     2.74     0.00             0.00         60
## 3       -5.52      12.42     4.14     1.38             0.00        120
## 4       -5.99      15.98     4.66     4.00           300.00        232
## 5      -13.36     -12.52     6.68     4.17           200.00        186
## 6       -5.50      -28.8     4.23     2.54           200.00        361
## 7       -2.07     -18.61     3.10     1.03            75.00        144
## 8       -2.93     -35.19     4.40     7.33             0.00        104
## 9       -4.52        .65     4.52     1.94            33.33        242
## 10      -3.37       2.25     6.74     1.12            50.00        132
## 11      -2.63      -2.63     5.26     2.10           233.33        254
## 12       0.00     -11.47     6.37     2.55            50.00        117
## 13      -7.95     -14.14     5.30     1.77           400.00        196
## 14     -10.42     -39.28     8.82     0.80            40.00        184
## 15      -7.37      -9.82     8.19     1.64           100.00        169
## 16       1.02      -2.04     5.10     5.10           175.00        122
## 17      -8.02       8.97     5.66     2.36           140.00        349
## 18      -7.87      -14.3     5.01     2.86            50.00        212
## 19      -7.55          .     7.55     0.00            66.67        123
## 20       2.89     -33.21     8.66     2.89            33.33        105
## 21      -2.74     -32.83     4.10     1.37           100.00         94
## 22      -2.69       1.34     3.58     2.24           100.00        320
## 23      -5.41     -27.06     5.86     3.16            83.33        324
## 24      -1.69     -12.26     6.34     1.90            94.12        628
## 25      -6.03      -1.51     4.52     2.26            53.85        495
##    戶長平均年齡 戶長男性人數 戶長女性人數 納稅單位 綜合所得總額 平均數 中位數
## 1            55          331          292      367       289560    789    648
## 2            58           97           69       86        85775    997    501
## 3            57          178          153      161       107138    665    460
## 4            57          409          314      339       285390    842    565
## 5            57          279          229      371       321877    868    588
## 6            58          540          445      659       523962    795    526
## 7            58          235          162      305       273153    896    543
## 8            57          150          139      196       188234    960    552
## 9            57          432          349      384       339650    885    622
## 10           57          198          192      236       185358    785    595
## 11           57          432          351      597       544962    913    572
## 12           57          174          128      196       278825   1423    562
## 13           58          255          222      299       278508    931    543
## 14           57          300          254      272       202190    743    516
## 15           57          294          219      316       300346    950    618
## 16           54          239          199      235       205516    875    617
## 17           56          635          493      401       274637    685    500
## 18           58          322          253      321       231148    720    572
## 19           58          171          135      159       234769   1477    637
## 20           57          150          131      150       101968    680    569
## 21           57          164          114      183       170973    934    573
## 22           56          474          467      508       308342    607    490
## 23           56          541          452      568       388277    684    519
## 24           56         1118          813     1363      1090123    800    598
## 25           57          866          588     1058       777693    735    542
##    第一分位數 第三分位數  標準差 變異係數 各類所得金額合計 各類所得金額營利所得
## 1         357       1048  695.65    88.17           289560                 2725
## 2         346        896 2117.10   212.27            85775                  834
## 3         266        680  781.52   117.44           107138                 1487
## 4         321       1054  992.54   117.90           285390                 4960
## 5         309       1000 1234.19   142.25           322003                 3197
## 6         330        979  981.69   123.47           523853                 7118
## 7         294       1016 1284.91   143.47           273153                 2068
## 8         322        863 1817.63   189.26           188234                 1288
## 9         317       1170  894.06   101.08           339653                 7319
## 10        319       1005  735.91    93.70           185358                 2756
## 11        309        964 1373.59   150.48           544962                 3559
## 12        355       1003 5372.57   377.66           278825                 3441
## 13        310       1029 2389.96   256.58           278508                 3996
## 14        275        867  923.41   124.22           202190                 2267
## 15        359       1166 1066.59   112.22           300346                 5344
## 16        352       1020 1008.21   115.29           205516                 1325
## 17        276        842  670.09    97.84           274637                 2199
## 18        317        938  578.10    80.28           231148                 1688
## 19        320       1186 4863.32   329.37           234672                 2015
## 20        329        833  510.33    75.07           101968                  688
## 21        306       1079 1165.34   124.73           170973                 9565
## 22        311        751  498.79    82.18           308342                  779
## 23        314        840  670.71    98.12           388277                  661
## 24        340       1033  735.76    91.99          1090123                10155
## 25        335        898  722.90    98.35           777693                 5043
##    各類所得金額執行業務所得 各類所得金額薪資所得 各類所得金額利息所得
## 1                      5562               228306                15889
## 2                        26                55542                 2799
## 3                      2736                83321                 4660
## 4                      7215               177351                15398
## 5                      4251               195425                27864
## 6                     11950               363508                26273
## 7                      3655               182703                17190
## 8                      1421               100829                 8790
## 9                      8444               210352                27212
## 10                     4794               125387                14982
## 11                    18017               346679                34942
## 12                    11500               115127                13254
## 13                     4626               145696                18436
## 14                     2402               136927                10237
## 15                     1809               206330                13651
## 16                     1903               157952                 6456
## 17                    11533               205344                13054
## 18                     8379               182470                12605
## 19                     4259                87518                 9050
## 20                      601                86854                 4288
## 21                     2087                93585                 8061
## 22                     4590               260380                15359
## 23                     5186               315959                32319
## 24                    27696               837112                81928
## 25                     5849               628866                37392
##    各類所得金額租賃及權利金 各類所得金額財產交易所得 各類所得金額機會中獎所得
## 1                      4140                      259                      259
## 2                      1590                       42                       55
## 3                      6993                       94                       32
## 4                     11246                      419                      180
## 5                     10021                      799                      123
## 6                     13951                      848                      408
## 7                     26913                      868                      345
## 8                     14122                        0                       98
## 9                     21212                      554                      233
## 10                     7477                      340                      177
## 11                    23966                      258                      228
## 12                     6501                      118                      249
## 13                    22133                      123                      139
## 14                     8713                      950                      164
## 15                    16531                      473                      108
## 16                     3226                      166                       86
## 17                     9251                      961                      200
## 18                     6593                      363                      131
## 19                    14969                     1600                      124
## 20                      968                       87                       17
## 21                    12211                      293                       66
## 22                     2728                      289                      275
## 23                     1854                     1095                      908
## 24                    17543                     1514                     1259
## 25                    16923                     1159                      684
##    各類所得金額股利所得 各類所得金額退職所得 各類所得金額其他所得
## 1                 27183                 1210                 2019
## 2                 24171                    0                  265
## 3                  5577                    6                  502
## 4                 57117                    0                 2447
## 5                 66374                   63                 5837
## 6                 91632                   13                 3589
## 7                 30111                 4893                 2007
## 8                 44820                    0                12039
## 9                 48940                  105                 3331
## 10                22491                  211                 3855
## 11               110006                    5                 2838
## 12               124652                    0                  813
## 13                79126                  148                  533
## 14                32329                 3634                 2294
## 15                46628                    0                 1744
## 16                31663                    0                  747
## 17                26506                   16                 1812
## 18                17107                    0                 1281
## 19               111940                    0                 1804
## 20                 6566                    3                 1115
## 21                35353                    0                 3421
## 22                17895                   45                 1925
## 23                16295                 3002                 1618
## 24                88726                 1774                 8965
## 25                64507                  143                 9199
##    各類所得金額稿費所得 各類所得金額申報大於歸戶 薪資淨所得
## 1                     0                     2009     179746
## 2                     0                      450      43788
## 3                     0                     1731      63673
## 4                     0                     9054     137363
## 5                   193                     7857     154068
## 6                    13                     4551     283302
## 7                     0                     2400     147780
## 8                     0                     4827      79117
## 9                    21                    11931     167610
## 10                    0                     2887      98714
## 11                  133                     4331     277422
## 12                    0                     3170      91684
## 13                    0                     3552     113978
## 14                    0                     2272     104067
## 15                    0                     7729     161164
## 16                    0                     1992     125853
## 17                    0                     3761     159120
## 18                  126                      405     141610
## 19                    0                     1394      70351
## 20                    0                      782      65995
## 21                  506                     5825      70353
## 22                  274                     3803     196431
## 23                    0                     9379     244771
## 24                  237                    13214     660198
## 25                   14                     7915     490090
##    按薪資淨所得計算之綜合所得 稿費收入
## 1                      241370      158
## 2                       74021        7
## 3                       87490       33
## 4                      245402      111
## 5                      280520     1010
## 6                      443756      749
## 7                      238230      248
## 8                      166522      377
## 9                      296908      565
## 10                     158685       93
## 11                     475705      940
## 12                     255382      358
## 13                     246790       85
## 14                     169329       78
## 15                     255948      325
## 16                     173416      294
## 17                     228412       85
## 18                     190288      407
## 19                     217602       99
## 20                      81110       16
## 21                     147741      913
## 22                     244393      737
## 23                     317089      143
## 24                     913215     1603
## 25                     638916      428


【進階篇】

結合 select 與 filter 找出新竹縣,並挑選出年分、縣市、鄉鎮、村里、遷入人口與遷出人口

df %>% filter(縣市名稱 == "高雄市",year>103) %>%    # 篩選出18歲以上的女運動員
  dplyr::select('縣市代碼',year,'鄉鎮市區名稱','村里名稱','遷入人口數','遷出人口數') %>%           # 挑選想要的欄位
  head(10) 
##    縣市代碼 year 鄉鎮市區名稱 村里名稱 遷入人口數 遷出人口數
## 1     64000  104       鹽埕區   藍橋里         81         83
## 2     64000  104       鹽埕區   慈愛里         13         24
## 3     64000  104       鹽埕區   博愛里         30         52
## 4     64000  104       鹽埕區   壽星里         83        109
## 5     64000  104       鹽埕區   中山里         46         74
## 6     64000  104       鹽埕區   教仁里        111        162
## 7     64000  104       鹽埕區   新樂里         52         44
## 8     64000  104       鹽埕區   中原里         42         45
## 9     64000  104       鹽埕區   光明里         79        136
## 10    64000  104       鹽埕區   育仁里         82         77

4. arrange()

說明:依變數排序


【基礎篇】

將新竹縣湖口鄉的資料依照年份排序(從最新到最舊)

df %>% filter(縣市名稱 == "高雄市",鄉鎮市區名稱 == "左營區",year>103) %>%   
dplyr::select('縣市代碼',year,'鄉鎮市區名稱','村里名稱','遷入人口數','遷出人口數') %>% arrange(desc(year)) %>% head(25)# 預設為正序, desc代表倒序
##    縣市代碼 year 鄉鎮市區名稱 村里名稱 遷入人口數 遷出人口數
## 1     64000  106       左營區   進學里         59        217
## 2     64000  106       左營區   尾西里         35         43
## 3     64000  106       左營區   頂北里         16         24
## 4     64000  106       左營區   中北里         23         25
## 5     64000  106       左營區   中南里         13         20
## 6     64000  106       左營區   廟東里         17         39
## 7     64000  106       左營區   廟北里         38         28
## 8     64000  106       左營區   尾南里         14         24
## 9     64000  106       左營區   尾北里        124        155
## 10    64000  106       左營區   屏山里         70         68
## 11    64000  106       左營區   祥和里         14         16
## 12    64000  106       左營區   永清里         42        178
## 13    64000  106       左營區   莒光里         95         98
## 14    64000  106       左營區   光輝里        156        126
## 15    64000  106       左營區   合群里        209        194
## 16    64000  106       左營區   明建里         57        157
## 17    64000  106       左營區   頂西里         21         49
## 18    64000  106       左營區   聖后里         17         25
## 19    64000  106       左營區   聖西里         12         14
## 20    64000  106       左營區   聖南里         15         13
## 21    64000  106       左營區   城南里         14         25
## 22    64000  106       左營區   路東里         14         34
## 23    64000  106       左營區    ■北里         10          9
## 24    64000  106       左營區    ■南里         11         21
## 25    64000  106       左營區   埤西里         30         37


【進階篇】

找出103年後,新竹縣湖口鄉的年份、縣市名稱、村里名稱、遷入人口數、遷出人口數、老年人戶數,並且將資料依照年分與老年人戶數由高到低進行排列。

df %>% filter(縣市名稱 == "高雄市",鄉鎮市區名稱 == "左營區",year>103) %>%   
dplyr::select(year,'縣市名稱','鄉鎮市區名稱','村里名稱','遷入人口數','遷出人口數',"老年人戶數") %>% arrange(desc(year),desc(老年人戶數)) 
##     year 縣市名稱 鄉鎮市區名稱 村里名稱 遷入人口數 遷出人口數 老年人戶數
## 1    106   高雄市       左營區   新上里       1737       1622       2327
## 2    106   高雄市       左營區   福山里       2345       2247       2239
## 3    106   高雄市       左營區   菜公里       1637       1484       2167
## 4    106   高雄市       左營區   新下里        913        759       1335
## 5    106   高雄市       左營區   海勝里        360        279       1155
## 6    106   高雄市       左營區   新光里        814        732       1122
## 7    106   高雄市       左營區   合群里        209        194        658
## 8    106   高雄市       左營區   新中里        217        231        620
## 9    106   高雄市       左營區   果貿里        161        197        513
## 10   106   高雄市       左營區   尾北里        124        155        483
## 11   106   高雄市       左營區   光輝里        156        126        436
## 12   106   高雄市       左營區   進學里         59        217        410
## 13   106   高雄市       左營區   果峰里         70         78        347
## 14   106   高雄市       左營區   莒光里         95         98        318
## 15   106   高雄市       左營區   屏山里         70         68        308
## 16   106   高雄市       左營區   果惠里         58         65        284
## 17   106   高雄市       左營區   埤北里         75         55        278
## 18   106   高雄市       左營區   崇實里        244        237        236
## 19   106   高雄市       左營區   埤東里         64         70        206
## 20   106   高雄市       左營區   尾西里         35         43        204
## 21   106   高雄市       左營區   頂西里         21         49        192
## 22   106   高雄市       左營區   埤西里         30         37        190
## 23   106   高雄市       左營區   廟北里         38         28        184
## 24   106   高雄市       左營區   聖后里         17         25        145
## 25   106   高雄市       左營區   廟東里         17         39        144
## 26   106   高雄市       左營區   尾南里         14         24        140
## 27   106   高雄市       左營區   中北里         23         25        134
## 28   106   高雄市       左營區   路東里         14         34        127
## 29   106   高雄市       左營區   頂北里         16         24        111
## 30   106   高雄市       左營區   中南里         13         20        109
## 31   106   高雄市       左營區   聖南里         15         13         94
## 32   106   高雄市       左營區   城南里         14         25         94
## 33   106   高雄市       左營區   祥和里         14         16         93
## 34   106   高雄市       左營區   永清里         42        178         88
## 35   106   高雄市       左營區    ■北里         10          9         82
## 36   106   高雄市       左營區    ■南里         11         21         70
## 37   106   高雄市       左營區   聖西里         12         14         68
## 38   106   高雄市       左營區   明建里         57        157         52
## 39   106   高雄市       左營區   自助里          8         21         42
## 40   105   高雄市       左營區   新上里       1725       1707       2142
## 41   105   高雄市       左營區   福山里       2442       2149       2044
## 42   105   高雄市       左營區   菜公里       1704       1564       1979
## 43   105   高雄市       左營區   新下里        829        831       1233
## 44   105   高雄市       左營區   海勝里        286        316       1135
## 45   105   高雄市       左營區   新光里        742        707       1062
## 46   105   高雄市       左營區   合群里        269        124        629
## 47   105   高雄市       左營區   新中里        211        251        565
## 48   105   高雄市       左營區   果貿里        173        152        511
## 49   105   高雄市       左營區   尾北里        192        150        467
## 50   105   高雄市       左營區   光輝里        153        125        401
## 51   105   高雄市       左營區   進學里         61        212        376
## 52   105   高雄市       左營區   果峰里         78         69        342
## 53   105   高雄市       左營區   莒光里         81        103        302
## 54   105   高雄市       左營區   屏山里        101         82        301
## 55   105   高雄市       左營區   埤北里         62         50        282
## 56   105   高雄市       左營區   果惠里         71         81        275
## 57   105   高雄市       左營區   崇實里        282        295        218
## 58   105   高雄市       左營區   埤東里         41         44        205
## 59   105   高雄市       左營區   尾西里         41         44        199
## 60   105   高雄市       左營區   埤西里         18         28        187
## 61   105   高雄市       左營區   頂西里         28         35        183
## 62   105   高雄市       左營區   廟北里         28         39        177
## 63   105   高雄市       左營區   尾南里         26         31        144
## 64   105   高雄市       左營區   聖后里         23         24        141
## 65   105   高雄市       左營區   廟東里         33         17        139
## 66   105   高雄市       左營區   中北里         34         33        122
## 67   105   高雄市       左營區   路東里         28         23        119
## 68   105   高雄市       左營區   頂北里         14         11        104
## 69   105   高雄市       左營區   中南里         16         19        103
## 70   105   高雄市       左營區   永清里        116        153        103
## 71   105   高雄市       左營區   祥和里         14         13         98
## 72   105   高雄市       左營區   明建里         77         91         94
## 73   105   高雄市       左營區   城南里         23         21         91
## 74   105   高雄市       左營區   聖南里         20         19         87
## 75   105   高雄市       左營區    ■北里         11         20         82
## 76   105   高雄市       左營區   聖西里         16         10         64
## 77   105   高雄市       左營區    ■南里         26         18         49
## 78   105   高雄市       左營區   自助里         21         24         42
## 79   104   高雄市       左營區   新上里       2006       1848       1998
## 80   104   高雄市       左營區   福山里       2626       2245       1892
## 81   104   高雄市       左營區   菜公里       1793       1654       1846
## 82   104   高雄市       左營區   新下里        782        750       1164
## 83   104   高雄市       左營區   海勝里        257        271       1140
## 84   104   高雄市       左營區   新光里        759        748        974
## 85   104   高雄市       左營區   合群里        169        142        617
## 86   104   高雄市       左營區   新中里        202        230        540
## 87   104   高雄市       左營區   果貿里        154        170        498
## 88   104   高雄市       左營區   尾北里        185        214        464
## 89   104   高雄市       左營區   光輝里        172        191        382
## 90   104   高雄市       左營區   進學里         74        272        352
## 91   104   高雄市       左營區   果峰里         73        107        337
## 92   104   高雄市       左營區   屏山里         88         87        293
## 93   104   高雄市       左營區   莒光里        112         86        286
## 94   104   高雄市       左營區   果惠里         76         74        276
## 95   104   高雄市       左營區   埤北里         64         84        274
## 96   104   高雄市       左營區   埤東里         60         49        204
## 97   104   高雄市       左營區   尾西里         33         33        201
## 98   104   高雄市       左營區   崇實里        265        267        201
## 99   104   高雄市       左營區   埤西里         22         41        184
## 100  104   高雄市       左營區   頂西里         36         53        181
## 101  104   高雄市       左營區   廟北里         32         34        172
## 102  104   高雄市       左營區   聖后里         25         24        147
## 103  104   高雄市       左營區   尾南里         22         23        143
## 104  104   高雄市       左營區   廟東里         29         32        129
## 105  104   高雄市       左營區   中北里         26         25        121
## 106  104   高雄市       左營區   永清里        163        193        121
## 107  104   高雄市       左營區   路東里         30         33        114
## 108  104   高雄市       左營區   明建里         75        110        108
## 109  104   高雄市       左營區   中南里         11         17        102
## 110  104   高雄市       左營區   頂北里         14         24        101
## 111  104   高雄市       左營區   祥和里         15         25         97
## 112  104   高雄市       左營區   城南里         18         21         90
## 113  104   高雄市       左營區    ■北里          6          7         82
## 114  104   高雄市       左營區   聖南里         12         26         81
## 115  104   高雄市       左營區   聖西里         16         13         62
## 116  104   高雄市       左營區    ■南里         17         36         48
## 117  104   高雄市       左營區   自助里         23         26         39

5. group_by()

說明:將變數分組


【基礎篇】

依照縣市名稱進行分組

df %>% group_by(縣市名稱)
## # A tibble: 54,224 x 49
## # Groups:   縣市名稱 [22]
##     year 村里代碼 縣市代碼 縣市名稱 鄉鎮市區代碼 鄉鎮市區名稱 村里名稱
##    <int> <chr>    <chr>    <chr>    <chr>        <chr>        <chr>   
##  1   100 0900701… 9007     連江縣   9007010      南竿鄉       介壽村  
##  2   100 0900701… 9007     連江縣   9007010      南竿鄉       復興村  
##  3   100 0900701… 9007     連江縣   9007010      南竿鄉       福沃村  
##  4   100 0900701… 9007     連江縣   9007010      南竿鄉       清水村  
##  5   100 0900701… 9007     連江縣   9007010      南竿鄉       仁愛村  
##  6   100 0900701… 9007     連江縣   9007010      南竿鄉       津沙村  
##  7   100 0900701… 9007     連江縣   9007010      南竿鄉       馬祖村  
##  8   100 0900701… 9007     連江縣   9007010      南竿鄉       珠螺村  
##  9   100 0900701… 9007     連江縣   9007010      南竿鄉       四維村  
## 10   100 0900702… 9007     連江縣   9007020      北竿鄉       塘岐村  
## # … with 54,214 more rows, and 42 more variables: 自然增加人數 <int>,
## #   社會增加人數 <int>, 總增加人數 <int>, 遷入人口數 <int>, 遷出人口數 <int>,
## #   鄉鎮區內住址變更之遷入人口數 <int>, 鄉鎮區內住址變更之遷出人口數 <int>,
## #   粗出生率 <dbl>, 粗死亡率 <dbl>, 自然增加率 <dbl>, 社會增加率 <chr>,
## #   粗結婚率 <dbl>, 粗離婚率 <dbl>, `出生登記-性比率` <dbl>, 老年人戶數 <int>,
## #   戶長平均年齡 <int>, 戶長男性人數 <int>, 戶長女性人數 <int>, 納稅單位 <dbl>,
## #   綜合所得總額 <dbl>, 平均數 <dbl>, 中位數 <dbl>, 第一分位數 <dbl>,
## #   第三分位數 <dbl>, 標準差 <dbl>, 變異係數 <dbl>, 各類所得金額合計 <dbl>,
## #   各類所得金額營利所得 <dbl>, 各類所得金額執行業務所得 <dbl>,
## #   各類所得金額薪資所得 <dbl>, 各類所得金額利息所得 <dbl>,
## #   各類所得金額租賃及權利金 <dbl>, 各類所得金額財產交易所得 <dbl>,
## #   各類所得金額機會中獎所得 <dbl>, 各類所得金額股利所得 <dbl>,
## #   各類所得金額退職所得 <dbl>, 各類所得金額其他所得 <dbl>,
## #   各類所得金額稿費所得 <dbl>, 各類所得金額申報大於歸戶 <dbl>,
## #   薪資淨所得 <dbl>, 按薪資淨所得計算之綜合所得 <dbl>, 稿費收入 <dbl>

觀察以上資料框,可以發現:單一使用group_by不會對資料框產生變化。 group_by是聚合函數,目的是以此分組依據去做某種動作,因此需配合其他dplyr函數一起使用。



6. summarise()

說明:聚合運算 計算資料框中所指定的資料,並且只提供該運算結果。

【基礎篇】

欲觀察整個資料框中的平均遷入人口數與資料筆數

df %>% summarise(平均遷入人口數 = mean(遷入人口數),資料筆數=n())
##   平均遷入人口數 資料筆數
## 1       132.8674    54224

7. mutate()

說明:新增變數


【基礎篇】

製作一個新的變數:人口遷數(遷入人口數-遷出人口數))

df1=df %>% mutate(人口遷數 = (遷入人口數-遷出人口數)) %>% head(25)
df1
##    year     村里代碼 縣市代碼 縣市名稱 鄉鎮市區代碼 鄉鎮市區名稱 村里名稱
## 1   100 09007010-001     9007   連江縣      9007010       南竿鄉   介壽村
## 2   100 09007010-002     9007   連江縣      9007010       南竿鄉   復興村
## 3   100 09007010-003     9007   連江縣      9007010       南竿鄉   福沃村
## 4   100 09007010-004     9007   連江縣      9007010       南竿鄉   清水村
## 5   100 09007010-005     9007   連江縣      9007010       南竿鄉   仁愛村
## 6   100 09007010-006     9007   連江縣      9007010       南竿鄉   津沙村
## 7   100 09007010-007     9007   連江縣      9007010       南竿鄉   馬祖村
## 8   100 09007010-008     9007   連江縣      9007010       南竿鄉   珠螺村
## 9   100 09007010-009     9007   連江縣      9007010       南竿鄉   四維村
## 10  100 09007020-001     9007   連江縣      9007020       北竿鄉   塘岐村
## 11  100 09007020-002     9007   連江縣      9007020       北竿鄉   后沃村
## 12  100 09007020-003     9007   連江縣      9007020       北竿鄉   橋仔村
## 13  100 09007020-004     9007   連江縣      9007020       北竿鄉   芹壁村
## 14  100 09007020-005     9007   連江縣      9007020       北竿鄉    里村
## 15  100 09007020-006     9007   連江縣      9007020       北竿鄉   白沙村
## 16  100 09007030-001     9007   連江縣      9007030       莒光鄉   青帆村
## 17  100 09007030-002     9007   連江縣      9007030       莒光鄉   田沃村
## 18  100 09007030-003     9007   連江縣      9007030       莒光鄉   西坵村
## 19  100 09007030-004     9007   連江縣      9007030       莒光鄉   福正村
## 20  100 09007030-005     9007   連江縣      9007030       莒光鄉   大坪村
## 21  100 09007040-001     9007   連江縣      9007040       東引鄉   中柳村
## 22  100 09007040-002     9007   連江縣      9007040       東引鄉   樂華村
## 23  100 09020010-001     9020   金門縣      9020010       金城鎮   東門里
## 24  100 09020010-002     9020   金門縣      9020010       金城鎮   西門里
## 25  100 09020010-003     9020   金門縣      9020010       金城鎮   南門里
##    自然增加人數 社會增加人數 總增加人數 遷入人口數 遷出人口數
## 1             9           35         44        187        152
## 2             7            0          7         71         72
## 3            13           -2         11         76         72
## 4            10           15         25         70         60
## 5             4            7         11         33         31
## 6             3           -4         -1         20         18
## 7             6            0          6         27         27
## 8             3            0          3         10         11
## 9             0          -10        -10          9         19
## 10           11           29         40         69         39
## 11            0            3          3         12          8
## 12            2           15         17         19         10
## 13            1           -6         -5          7         10
## 14            4            7         11         22         16
## 15            0           -3         -3          8          9
## 16            2           -3         -1         44         47
## 17            0            7          7         15          9
## 18            2           -8         -6          1          9
## 19            1          -13        -12          5         19
## 20           -1          -10        -11         27         35
## 21            4           12         16         49         34
## 22            2            8         10         51         46
## 23           20          186        206        430        250
## 24           61          484        545        908        424
## 25           33          264        297        480        207
##    鄉鎮區內住址變更之遷入人口數 鄉鎮區內住址變更之遷出人口數 粗出生率 粗死亡率
## 1                            20                           20     9.48     4.99
## 2                             6                            5    11.04     4.01
## 3                             3                            9    20.30     2.71
## 4                            17                           12    19.12     4.41
## 5                             7                            2    10.58     2.12
## 6                             3                            9    13.36     3.34
## 7                             6                            6    14.14     2.02
## 8                             2                            1    19.54     0.00
## 9                             2                            2    14.04    14.04
## 10                            5                            6    15.60     3.34
## 11                            3                            4    13.16    13.16
## 12                            8                            2    12.50     4.17
## 13                            0                            3    11.43     5.71
## 14                            1                            0    18.38     3.68
## 15                            1                            3     8.33     8.33
## 16                            2                            2    15.23    10.15
## 17                            1                            0    10.39    10.39
## 18                            0                            0    26.67     0.00
## 19                            2                            1    16.26     8.13
## 20                            1                            3     7.91    10.54
## 21                            4                            7    15.53     7.77
## 22                            7                            4     5.32     1.77
## 23                           67                           61     9.39     5.21
## 24                          143                          143    10.46     3.95
## 25                           65                           74     9.87     3.48
##    自然增加率 社會增加率 粗結婚率 粗離婚率 出生登記-性比率 老年人戶數
## 1        4.49       5.49     4.99     1.00            72.73        131
## 2        7.02      -8.03     5.02     0.00           120.00         88
## 3       17.59       1.35     4.06     1.35            87.50         56
## 4       14.71     -14.71    14.71     0.00           116.67         26
## 5        8.47      14.81    12.70     2.12           150.00         40
## 6       10.02     -20.03     3.34     0.00             0.00         32
## 7       12.12     -12.12     2.02     2.02            75.00         35
## 8       19.54     -39.09     6.51     0.00           200.00         12
## 9        0.00     -21.05     0.00     0.00             0.00         13
## 10      12.26      -2.23     7.80     1.11           133.33         55
## 11       0.00     -26.32    13.16     0.00           100.00         17
## 12       8.33         25     8.33     0.00             0.00         24
## 13       5.71      -5.71    11.43     0.00             0.00         19
## 14      14.71          0    14.71     0.00             0.00         24
## 15       0.00     -16.67     0.00     0.00             0.00          9
## 16       5.08       5.08     2.54     5.08            20.00         30
## 17       0.00     -15.58    10.39     0.00             0.00         19
## 18      26.67     -53.33     0.00     0.00             0.00         11
## 19       8.13     -24.39     0.00     0.00           100.00         19
## 20      -2.64       5.27     0.00     2.64           200.00         35
## 21       7.77     -11.65     3.88     3.88           100.00         36
## 22       3.55          0     5.32     1.77           200.00         29
## 23       4.17        7.3     5.84     0.00            87.50        374
## 24       6.51        7.9     6.08     0.85            71.93        687
## 25       6.39      10.26     6.00     0.58            96.15        472
##    戶長平均年齡 戶長男性人數 戶長女性人數 納稅單位 綜合所得總額 平均數 中位數
## 1            55          282          146      580       564204    973    796
## 2            59          138           66      247       249096   1008    802
## 3            57          100           42      210       226461   1078    932
## 4            50           90           49      179       168706    942    751
## 5            60           69           39      134       121210    905    755
## 6            64           47           13       67        85247   1272    682
## 7            55           71           40      127       126266    994    690
## 8            62           13           12       30        25663    855    580
## 9            60           17            9       44        41474    943    820
## 10           55          115           72      227       212674    937    750
## 11           61           27           11       33        31238    947    750
## 12           58           38           15       39        33993    872    791
## 13           59           23           16       41        30651    748    600
## 14           60           41           15       53        36867    696    626
## 15           56           18            5       27        17816    660    586
## 16           56           55           22      105       103079    982    856
## 17           59           32            7       52        40027    770    681
## 18           57           14            8       20        12351    618    601
## 19           65           21            9       17        14166    833    683
## 20           58           57           18      107        91494    855    675
## 21           54           88           41      120        97804    815    800
## 22           52          105           45      144       124697    866    732
## 23           51          910          667     1062       941060    886    675
## 24           51         1795         1307     2517      2412691    959    728
## 25           53         1051          734     1216      1047613    862    670
##    第一分位數 第三分位數  標準差 變異係數 各類所得金額合計 各類所得金額營利所得
## 1         442       1266  740.40    76.11           566026                 6560
## 2         455       1354  839.35    83.23           249113                 1114
## 3         526       1393  983.44    91.20           226560                 3186
## 4         426       1244  787.73    83.58           169134                 3215
## 5         458       1228  606.70    67.07           121460                  329
## 6         467       1350 1936.66   152.21            85247                 1205
## 7         418       1360  875.85    88.09           126695                 2615
## 8         465       1031  650.58    76.05            25663                  143
## 9         416       1233  721.21    76.51            41599                  480
## 10        440       1217  813.53    86.83           212674                 3215
## 11        341       1151  743.90    78.59            31486                   29
## 12        475       1286  466.66    53.54            33993                  274
## 13        355       1040  498.27    66.65            31139                 1028
## 14        384        988  447.84    64.38            37117                  490
## 15        277       1036  463.26    70.21            17816                   97
## 16        514       1316  631.34    64.31           103079                  494
## 17        334       1141  534.91    69.49            40027                  391
## 18        266        888  427.71    69.26            12351                  182
## 19        320       1173  649.24    77.91            14187                   12
## 20        423       1042  702.95    82.21            91503                  841
## 21        396       1118  515.29    63.22            97705                 1539
## 22        390       1179  630.29    72.79           124877                 1159
## 23        382       1183  751.46    84.80           941167                10389
## 24        415       1236  932.82    97.31          2412646                16364
## 25        382       1112  743.89    86.35          1048090                 9847
##    各類所得金額執行業務所得 各類所得金額薪資所得 各類所得金額利息所得
## 1                      2782               484338                22361
## 2                      1091               214743                 8483
## 3                       492               181051                 7311
## 4                       348               150106                 5953
## 5                       509               108426                 6364
## 6                        61                69529                 2283
## 7                        92               103002                 5650
## 8                        58                22610                  905
## 9                       214                31155                 2616
## 10                      444               165058                 7878
## 11                      218                26855                  484
## 12                       50                31977                  441
## 13                      246                25918                 1961
## 14                       28                33578                 1182
## 15                        8                15184                  297
## 16                        1                89613                 6021
## 17                       22                35445                 1639
## 18                        0                 9046                 1887
## 19                      477                12085                  392
## 20                       11                73545                 4714
## 21                      361                86678                 3646
## 22                      276               110092                 5250
## 23                    12613               730503                46718
## 24                    16006              1937009               161789
## 25                     7951               830555                64683
##    各類所得金額租賃及權利金 各類所得金額財產交易所得 各類所得金額機會中獎所得
## 1                      6464                      609                      441
## 2                       940                      172                      163
## 3                      2941                      290                      288
## 4                      1862                      124                       63
## 5                       212                       11                       87
## 6                       724                        0                       35
## 7                       982                        0                       54
## 8                        10                       23                       11
## 9                      1366                      105                        2
## 10                     3620                     1895                       72
## 11                     1722                        0                        6
## 12                      181                       63                       14
## 13                      335                       36                      121
## 14                      191                        0                       12
## 15                      337                        0                        7
## 16                      468                       78                      238
## 17                       58                        0                       50
## 18                       94                       42                       14
## 19                        0                        0                       10
## 20                      882                       51                       49
## 21                      463                      238                       24
## 22                      604                      559                       70
## 23                     9314                     2479                      873
## 24                    20230                     5212                     3255
## 25                    13771                     1716                     1294
##    各類所得金額股利所得 各類所得金額退職所得 各類所得金額其他所得
## 1                 33870                  655                 4418
## 2                 20248                    0                  700
## 3                 28127                   42                  558
## 4                  6398                    0                  644
## 5                  4734                    0                  287
## 6                 10823                    0                  587
## 7                 12157                    0                 1100
## 8                  1761                    0                  143
## 9                  3281                    0                  321
## 10                25975                   24                  740
## 11                 1931                    0                  156
## 12                  905                    0                   87
## 13                 1147                    0                  296
## 14                 1530                    0                  102
## 15                 1739                    0                   50
## 16                 5782                    0                  207
## 17                 1694                    0                   68
## 18                  642                    0                   61
## 19                  601                    0                  223
## 20                11045                    0                  274
## 21                 4474                    0                  282
## 22                 5769                    0                  419
## 23                85126                  357                 8650
## 24               186115                 3852                21461
## 25                90073                  448                10341
##    各類所得金額稿費所得 各類所得金額申報大於歸戶 薪資淨所得
## 1                     0                     3530     409281
## 2                     2                     1457     182034
## 3                     0                     2275     153112
## 4                     0                      423     125860
## 5                     0                      502      91409
## 6                     0                        0      60350
## 7                     0                     1042      87576
## 8                     0                        0      18639
## 9                     0                     2060      25956
## 10                    0                     3753     135696
## 11                   85                        0      22422
## 12                    0                        0      26475
## 13                    0                       51      20775
## 14                    0                        4      26285
## 15                    0                       96      11460
## 16                    0                      177      75622
## 17                    0                      661      28052
## 18                    0                      384       6935
## 19                    0                      386       9754
## 20                    0                       90      60337
## 21                    0                        0      70547
## 22                    0                      680      91670
## 23                   76                    34069     602286
## 24                    4                    41349    1631132
## 25                  437                    16975     686235
##    按薪資淨所得計算之綜合所得 稿費收入 人口遷數
## 1                      489147      302       35
## 2                      216387      266       -1
## 3                      198522      189        4
## 4                      144460       76       10
## 5                      104194      185        2
## 6                       76069       57        2
## 7                      110822      198        0
## 8                       21693        0       -1
## 9                       36276       81      -10
## 10                     183312       80       30
## 11                      26805      302        4
## 12                      28491       11        9
## 13                      25509       11       -3
## 14                      29574        4        6
## 15                      14092        0       -1
## 16                      89088        1       -3
## 17                      32634        7        6
## 18                      10240        0       -8
## 19                      11834        4      -14
## 20                      78285       19       -8
## 21                      81674        5       15
## 22                     106275       19        5
## 23                     812842      593      180
## 24                    2106998     2209      484
## 25                     903293     1928      273

【進階篇】

106年各縣市平均各類所得金額合計、平居納稅單位、平均薪資淨所得以及年遷入人口總額

df %>% filter(year==106) %>% # 篩選106年的資料
  group_by(year,縣市名稱 ) %>%         # 依照縣市分類
  mutate(年遷入人口數 = sum(遷入人口數-遷出人口數) ) %>% #新增新變數        
  summarise(平均各類所得金額合計 = mean(各類所得金額合計),    
            平均納稅單位 = mean(納稅單位),            
            平均薪資淨所得 = mean(薪資淨所得),
            年遷入人口數總額=sum(年遷入人口數)) %>% head(25)      
## # A tibble: 22 x 6
## # Groups:   year [1]
##     year 縣市名稱 平均各類所得金額合計… 平均納稅單位 平均薪資淨所得 年遷入人口數總額
##    <int> <chr>                <dbl>        <dbl>          <dbl>            <int>
##  1   106 宜蘭縣             367126.         485.        227232.           -58716
##  2   106 花蓮縣             324041.         436.        204825.          -133936
##  3   106 金門縣             978177.        1072.        653129.            67673
##  4   106 南投縣             298942.         405.        183356.          -670196
##  5   106 屏東縣             262523.         354.        168943.          -955632
##  6   106 苗栗縣             432375.         533.        282883.         -1165870
##  7   106 桃園市            1126793.        1236.        732352.         14611410
##  8   106 高雄市             703158.         810.        435968.         -1203741
##  9   106 基隆市             535735.         681.        354971.             3768
## 10   106 連江縣             182516.         184.        130426.             4620
## # … with 12 more rows

問題與討論:放放同學想知道高雄市各區域的所有各類所得金額平均值。