【问题标题】:How do I merge 2 dataframes?如何合并 2 个数据框?
【发布时间】:2018-12-07 20:49:54
【问题描述】:

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

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

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

如何合并这两个数据框?

【问题讨论】:

    标签: r merge


    【解决方案1】:

    您可以为此使用 dplyr 包!

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

    【讨论】:

      【解决方案2】:

      虽然 Vincent 的建议很棒,但我想提供另一种使用 base 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)))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-08-23
        • 1970-01-01
        • 2022-07-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-04
        相关资源
        最近更新 更多