行の結合にはrbind.fill()が便利

各データフレームを行で結合したい場合がある。 列で結合する場合はleft_join()などのjoin関数がある。

データがない部分はNAで保管される。

    library(plyr)
    rbind.fill(mtcars[c("mpg", "wt")], mtcars[c("wt", "cyl")])
    mpg    wt cyl
    1 21.0 2.620  NA
    2 21.0 2.875  NA
    3 22.8 2.320  NA
    4 21.4 3.215  NA
    5 18.7 3.440  NA
    6 18.1 3.460  NA
    .................
    59  NA 2.140   4
    60  NA 1.513   4
    61  NA 3.170   8
    62  NA 2.770   6
    63  NA 3.570   8
    64  NA 2.780   4

  • 2017/7/23追記 dplyrパッケージのbind_rows()rbind_all()関数でも同様のことができるらしいので、 わざわざplyrパッケージをロードして使用する必要もないらしい。 ただし、bind_rows()はオブジェクトクラスによってはうまく機能しないらしいので注意。 現時点ではsfオブジェクトに対してはエラーが発生する。