【发布时间】:2020-03-12 20:24:24
【问题描述】:
基本问题,但我正在寻找一个很好的解决方案(不是循环),如果满足几个条件,则通过 DF2 的值在 DF1 中进行条件替换:
DF1
Name Year Val1
A 2010 x1
A 2012 x2
B 2012 x3
C 2015 x4
C 2012 x5
DF2
Name Year Val1
A 2012 y1
B 2012 y2
C 2012 y3
如果 Year 是某个值,例如在这种情况下为 2012,并且 DF1 和 DF2 的名称相同,则将 Val1 从 DF2 分配给 DF1。
我尝试了几件事:
DF1$Val1[DF1$Year=="2012"&DF1$Name==DF2$Name,] <-DF2$Val1
DF1$Val1<-replace(DF1$Val1, DF1$Year=="2012" & DF1$Name==DF2$Name, DF2$Val1)
但不幸的是,我收到了一个错误,因为 DF1 和 DF2 的长度不同。
预期:
DF1
Name Year Val1
A 2010 x1
A 2012 y1
B 2012 y2
C 2015 x4
C 2012 y3
感谢您的帮助!
【问题讨论】:
-
抱歉完全忘记了!我编辑了我的问题。