如何合并2个数据框?

时间:2018-06-28 17:26:38

标签: r merge

我有一个dataframe1,其一列包含名字,另一列dataframe2,其包含名字和相应的性别。

现在,我想将dataframe2的性别列添加到dataframe1中,但是它似乎不适用于以下行:

df2new <- merge(df1,df2,by.x="firstname",by.y ="gender")

如何合并这两个数据框?

2 个答案:

答案 0 :(得分:0)

您可以为此使用dplyr软件包!

library(dplyr)
dataframe1 <- left_join(data_frame1,data_frame2,by="firstname")

答案 1 :(得分:0)

虽然文森特的建议很好,但我想提供另一种使用基R的方式,该方式似乎与您的数据类似。

df1 <- data.frame(name = c("Val","Sarah","Al"))
df2 <- data.frame(name = c("Joe","Jen","Kevin","Val","Sarah","Al"), 
                            gender = c("M","F","M","F","F","M"))

df3 <- merge(df1, df2, by = intersect(colnames(df1), colnames(df2)))