使用 rbind.fill 或 bind_rows 时列消失
Columns disappearing when I use rbind.fill or bind_rows
我刚开始使用 R。
我正在尝试使用 rbind.fill 或 bind_rows 函数合并两个数据帧。
这两个数据框共享几乎所有的列,预计有 8 个列(其中一些在第一个数据框中,一些在第二个数据框中)。我找不到任何方法来确保新数据框包含所有列。
谁知道错误可能出在哪里?
在此先感谢您的宝贵帮助
因为你没有提供minimal example,我很难准确地解决你的问题。但请参阅下面的代码,您可以为您的数据重新组织。
使用名为 dplyr
的包中的 full_join
。请参阅 full_join
here.
的说明
install.packages("dplyr")
library(dplyr)
new_df <- full_join(df1, df2)
df1
是第一个数据集的名称,df2
是第二个数据集的名称,new_df
是连接数据集的名称。
bind_rows
将 return 来自两个数据帧的所有列。对于其他数据集中未出现的列,该列将填充为 NA
.
library(dplyr)
one <- starwars[1:4, c(1,3,5,6,7)]
two <- starwars[9:12, c(1,2,4,6)]
bind_rows(one, two)
name mass skin_color eye_color birth_year height hair_color
<chr> <dbl> <chr> <chr> <dbl> <int> <chr>
1 Luke Skywalker 77 fair blue 19 NA NA
2 C-3PO 75 gold yellow 112 NA NA
3 R2-D2 32 white, blue red 33 NA NA
4 Darth Vader 136 white yellow 41.9 NA NA
5 Biggs Darklighter NA NA brown NA 183 black
6 Obi-Wan Kenobi NA NA blue-gray NA 182 auburn, white
7 Anakin Skywalker NA NA blue NA 188 blond
8 Wilhuff Tarkin NA NA blue NA 180 auburn, grey
我刚开始使用 R。
我正在尝试使用 rbind.fill 或 bind_rows 函数合并两个数据帧。
这两个数据框共享几乎所有的列,预计有 8 个列(其中一些在第一个数据框中,一些在第二个数据框中)。我找不到任何方法来确保新数据框包含所有列。 谁知道错误可能出在哪里?
在此先感谢您的宝贵帮助
因为你没有提供minimal example,我很难准确地解决你的问题。但请参阅下面的代码,您可以为您的数据重新组织。
使用名为 dplyr
的包中的 full_join
。请参阅 full_join
here.
install.packages("dplyr")
library(dplyr)
new_df <- full_join(df1, df2)
df1
是第一个数据集的名称,df2
是第二个数据集的名称,new_df
是连接数据集的名称。
bind_rows
将 return 来自两个数据帧的所有列。对于其他数据集中未出现的列,该列将填充为 NA
.
library(dplyr)
one <- starwars[1:4, c(1,3,5,6,7)]
two <- starwars[9:12, c(1,2,4,6)]
bind_rows(one, two)
name mass skin_color eye_color birth_year height hair_color
<chr> <dbl> <chr> <chr> <dbl> <int> <chr>
1 Luke Skywalker 77 fair blue 19 NA NA
2 C-3PO 75 gold yellow 112 NA NA
3 R2-D2 32 white, blue red 33 NA NA
4 Darth Vader 136 white yellow 41.9 NA NA
5 Biggs Darklighter NA NA brown NA 183 black
6 Obi-Wan Kenobi NA NA blue-gray NA 182 auburn, white
7 Anakin Skywalker NA NA blue NA 188 blond
8 Wilhuff Tarkin NA NA blue NA 180 auburn, grey