【发布时间】:2016-03-01 17:44:26
【问题描述】:
我已经阅读了对这个问题的回答:
Using one data.frame to update another
答案似乎有效,但仅适用于整数。我正在尝试更新某个数据框,称为“原始”:
original = data.frame( Name = c("Drug A","Drug B") , Id = c( 1 , 2) , Value1 = c("Yellow",NA), Value2 = c(NA,"Blue") )
使用将覆盖某些值的替换 data.frame:
replacement = data.frame( Name = c("Drug B") , Id = 2 , Value1 = "Red" , Value2 = "Orange")
最终应该是这样的:
goal = data.frame( Name = c("Drug A","Drug B") , Id = c( 1 , 2) , Value1 = c("Yellow","Red"), Value2 = c(NA,"Orange") )
与上一个问题一样,该解决方案应该适用于任意长度和/或大小的表格。有什么想法吗?
【问题讨论】:
-
先把
factor类转换成character类再做original[match(replacement$Name, original$Name), 3:4] <- replacement[, 3:4]