Проблема с дублированием строк при объединении фреймов данных в R - PullRequest
0 голосов
/ 07 мая 2020

Привет! У меня есть два набора данных, назовем их Data1 и Data2. Я хочу объединить эти наборы данных на основе индивидуальных идентификаторов. Я планирую использовать следующий код:

"MergedData <-merge.data.frame (Data1, Data2, by.x =" ID ", by.y =" ID ", all.x = TRUE, all.y = FALSE) "</p>

Однако в Data2 будут дубликаты. Data2 - это огромный набор данных, поэтому нет смысла искать дубликаты перед слиянием (после слияния, если я все сделал правильно, будет столько же строк, сколько в Data1, но все столбцы из Data1 и Данные2?). Что я хочу сделать, так это выяснить, есть ли какие-либо дубликаты в Data2, которые также повлияют на Data1. Спасибо за помощь!

1 Ответ

1 голос
/ 07 мая 2020
    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

уникальный или отдельный (tidyverse) удалит их.

Попробуйте tidyverse, это нормально, если вы начнете с R :)

Путь тидиверса:

    library(dplyr)
    df1 %>%
        left_join(df2,by="a") %>%
        distinct()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...