我想rbind 2行,但在R中没有重叠行

dl5txlt9  于 2023-07-31  发布在  其他
关注(0)|答案(1)|浏览(79)

data1data2

data1 <- data.frame(date = c(123, 124, 125, 126),
                    peter = c(10, 11, NA, NA),
                    turner = c(20, 21, NA, NA))

data2 <- data.frame(date = c(124, 125, 126, 127, 128),
                    peter = c(12, 10, 30, 50, 70),
                    turner = c(23, 20, 40, 60, 80))

字符串
我的目标是rbinddata1data2。但是,正如你所看到的,date是重叠的。我必须确保当我绑定它们时,date必须不重叠。因此,我想使用data1中的不重叠行,并使用data2中的其他行,并将它们rbind在一起。在此示例中,date = 124,125,126重叠。所以,我想要的输出应该是这样的:

data=data.frame(date=c(123,124,125,126,127,128), peter=c(10,12,10,30,50,70), turner=c(20,23,20,40,60,80))


我不知道R怎么做。

euoag5mw

euoag5mw1#

听起来你需要dplyr::rows_upsert()来添加新的行或按键覆盖现有的行:

library(dplyr)

rows_upsert(data1, data2, by = "date")

  date peter turner
1  123    10     20
2  124    12     23
3  125    10     20
4  126    30     40
5  127    50     60
6  128    70     80

字符串

相关问题