第 8 章 資料合併

combine-tables combine-tables1

combine-tables2

combine-tables2

_join(x,y,by=c(“變數1”))用來合併x,y兩個資料,x為左側資料,y為右側資料。
- left_join:保留左側資料x完整結構,把y資料所有變數依兩者共有的“變數1”來識別合併。如:兩者些有身份證字號,則我們可以用身份證字號變數來合併。
- right_join: 保留右側資料y完整結構,把x資料所有變數依兩者共有的“變數1”來識別合併。
- inner_join: 依兩者共有的“變數1”來識別合併,但只留下識別變數兩者皆有的觀測值。如:兩者皆有A的資料,但其中一個沒有B的資料,那合併後不會保留B。
- full_join: 依兩者共有的“變數1”來識別合併,且保留所有的觀測值。

left_join(right_join)只會保留左側資料(右側資料)的觀測值。

band_members 
## # A tibble: 3 x 2
##    name    band
##   <chr>   <chr>
## 1  Mick  Stones
## 2  John Beatles
## 3  Paul Beatles
band_instruments 
## # A tibble: 3 x 2
##    name  plays
##   <chr>  <chr>
## 1  John guitar
## 2  Paul   bass
## 3 Keith guitar
band_members %>% left_join(band_instruments,
                           by=c("name"))
## # A tibble: 3 x 3
##    name    band  plays
##   <chr>   <chr>  <chr>
## 1  Mick  Stones   <NA>
## 2  John Beatles guitar
## 3  Paul Beatles   bass

練習四: 請載入teacher.ID.table.Rdata, 將teacher_pinyin合併入transcript.data.new2