【问题标题】:Problem with Row duplicates when joining dataframes in R在 R 中加入数据帧时行重复的问题
【发布时间】:2020-08-23 03:15:06
【问题描述】:

嗨! 我有两个数据集,我们称它们为 Data1 和 Data2。我想根据个人 ID 合并这些数据集。我的计划是使用以下代码;

“MergedData

但是,在 Data2 中会有重复。 Data2 是一个巨大的数据集,因此在合并之前搜索重复项是没有用的(在合并之后,如果我做得对,将只有 Data1 中的行数,但 Data1 和数据2?)。 我想做的是找出Data2中是否有任何重复也会影响Data1。感谢您的帮助!

【问题讨论】:

    标签: r merge duplicates


    【解决方案1】:
        df1 <- data.frame(a=c(1,3),d=c("car","bike"))
        df2 <- data.frame(a=c(1,1,2,3),b=c(1,1,2,2))
        merge.data.frame(df1,df2,by.x="a", by.y="a", all.x=TRUE, all.y=FALSE)
    

    您的合并保留了重复项

           a    d  b
         1 1  car  1
         2 1  car  1
         3 3  bike 2
    

    unique 或 distinct (tidyverse) 将删除它们。

    试试 tidyverse,如果你从 R 开始就可以了 :)

    tidyverse 方式:

        library(dplyr)
        df1 %>%
            left_join(df2,by="a") %>%
            distinct()
    

    【讨论】:

      猜你喜欢
      • 2020-08-29
      • 2018-06-29
      • 2012-10-13
      • 2019-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-12
      相关资源
      最近更新 更多