如何覆盖/替换 R 中的特定行?

问题描述 投票:0回答:1

我有一个数据集,其中包含一些经过校正后获得的数据,这些数据应该与主数据集合并。 我正在考虑一种用新值覆盖旧值的方法,但我不知道该怎么做。你能帮帮我吗?

这是我所拥有的示例:

Data <- data.frame(ID = c("Gfa","Gfa","Gfa","Pka","Pka","Pka"),
                Treatment = c("Control","T1","T2","Control","T1","T2"),
                Value = c(3,4,6,2,9,7))
                         
Data_new <- data.frame(ID = c("Gfa","Pka","Pka"),
                Treatment = c("Control","Control","T2"),
                Value = c(5,2,8))    

你能告诉我如何将

Data_new
合并到
Data
,只覆盖新值吗?

非常感谢您的帮助

r dataframe merge overwrite
1个回答
2
投票
library(dplyr)
Data %>%
  rows_update(Data_new, by = c("ID", "Treatment"))


Result

   ID Treatment Value
1 Gfa   Control     5
2 Gfa        T1     4
3 Gfa        T2     6
4 Pka   Control     2
5 Pka        T1     9
6 Pka        T2     8
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.