以下是示例数据框的示例
data.frame1
col1 col2 col3 col4
1 2 3 4
2 3 4 4
Run Code Online (Sandbox Code Playgroud)
data.frame2
col5 col6 col7 col8
1 2 3 4
3 3 5 9
Run Code Online (Sandbox Code Playgroud)
data.frame3
col9 col10 col11
1 2 3
Run Code Online (Sandbox Code Playgroud)
期望的输出data.frame.append
col1 col2 col3 col4 col5 col6 col7 col8 col9 col10 col11
1 2 3 4 NA NA NA NA NA NA NA
2 3 4 4 NA NA NA NA NA NA NA
NA NA NA NA 1 2 3 4 NA NA NA
NA NA NA NA 3 3 5 9 NA NA NA
NA NA NA NA NA NA NA NA 1 2 3
Run Code Online (Sandbox Code Playgroud)
这样做的最有效方法是什么,可以扩展到动态创建的任意数量的数据帧.
先感谢您.
编辑:
谢谢你们; 效率是你感兴趣的,可以在这里找到简短的讨论
更简单的方法是使用plyr::ldply:
ldply(list(df1, df2, df3))
col1 col2 col3 col4 col5 col6 col7 col8 col9 col10 col11
1 1 2 3 4 NA NA NA NA NA NA NA
2 2 3 4 4 NA NA NA NA NA NA NA
3 NA NA NA NA 1 2 3 4 NA NA NA
4 NA NA NA NA 3 3 5 9 NA NA NA
5 NA NA NA NA NA NA NA NA 1 2 3
Run Code Online (Sandbox Code Playgroud)
我们可以bind_rows从dplyr
library(dplyr)
bind_rows(df1, df2, df3)
# col1 col2 col3 col4 col5 col6 col7 col8 col9 col10 col11
#1 1 2 3 4 NA NA NA NA NA NA NA
#2 2 3 4 4 NA NA NA NA NA NA NA
#3 NA NA NA NA 1 2 3 4 NA NA NA
#4 NA NA NA NA 3 3 5 9 NA NA NA
#5 NA NA NA NA NA NA NA NA 1 2 3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
126 次 |
| 最近记录: |