我正在尝试连接 R 中的两个数据帧,每个数据帧都有相同 ID 号的多次重复。这是数据中的预期现象,不是数据质量问题。
我的理解是,我应该在两个数据帧之间进行左连接,指定多对多关系,这样就可以了。然而,我的 ID 却以一种意想不到的方式被重复。
以下是一些测试数据:
test4 <- data.frame(ID = c('A', 'A', 'B', 'B', 'C'), Score = c(1,2,3,4,5))
test5 <- data.frame(ID = c('A', 'A', 'B', 'B', 'C'), Race = c('W','W','B','B','W'))
test6 <- test4 %>% left_join(test5, by = "ID", relationship = "many-to-many")
输出数据如下:
ID Score Race
A 1 W
A 1 W
A 2 W
A 2 W
B 3 B
B 3 B
B 4 B
B 4 B
C 5 W
当我希望它像这样输出时:
ID Score Race
A 1 W
A 2 W
B 3 B
B 4 B
C 5 W
我愿意打赌我错过了一些简单的东西,但我就是不知道是什么。任何建议非常感谢!
您可以在应用
distinct
之前使用 left_join
,例如,
test4 %>%
left_join(distinct(test5), by = "ID")