
10.5
フィルタジョイン
163
5. 2013年6月13日に何が起こったか。この特別な遅延のパターンを表示してから、Googleを使い、
天候との相互参照を行いなさい。(http://www.weather.gov/cle/2013_June12-13参照)
10.4.6
他の実装
base::merge()
は4 種類の更新ジョインができます。
dplyr merge
inner_join(x, y) merge(x, y)
left_join(x, y) merge(x, y, all.x = TRUE)
right_join(x, y) merge(x, y, all.y = TRUE)
full_join(x, y) merge(x, y, all.x = TRUE, all.y = TRUE)
dplyr
の関数の方がより明確に意図を伝えられるという利点があります。各種のジョインの間の相
違は本当に重要なのですが、
merge()
の引数ではそれが隠蔽されます。
dplyr
のジョインの方がかな
り高速であり、行の順序が正しく保持されます。
dplyr
の表記法はSQLに従っているので、翻訳は簡単です。
dplyr SQL
inner_join(x, y, by = "z") SELECT * FROM x INNER JOIN y USING (z)
left_join(x, y, by = "z") SELECT * FROM x LEFT OUTER JOIN y USING (z)
right_join(x, ...