我想在 R 中绑定 2 行但没有重叠的行

I want to rbind 2 rows but without overlapping rows in R

提问人:Lee 提问时间:7/21/2023 更新时间:7/21/2023 访问量:37

问:

我有和.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))

我的目标是和.但是,如您所见,重叠 .我必须确保当我绑定它们时,必须不重叠。因此,我想使用 from 中的非重叠行,并使用 from 中的其他行并将它们绑定在一起。在此示例中,=124,125,126 重叠。所以,我想要的输出应该是这样的:rbinddata1data2datedatedata1data2date

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中该怎么做。

r 日期时间 dplyr rbind

评论


答:

3赞 lotus 7/21/2023 #1

听起来你想要添加新行或按键覆盖现有行: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