我经常遇到必须从另一个数据源“填写”信息的情况。
例如:
x <- data.frame(c1=letters[1:26],c2=letters[26:1])
x[x$c1 == "m","c2"] <- NA
x[x$c1 == "a","c2"] <- NA
c1 c2
1 a <NA>
2 b y
3 c x
4 d w
5 e v
6 f u
7 g t
8 h s
9 i r
10 j q
11 k p
12 l o
13 m <NA>
...
现在,有了那个缺失的变量,我想检查并使用单独的 data.frame 填充它,让我们称之为y
y <- data.frame(c1=c("m","a"),c2=c("n","z"))
所以,我希望用 y 填充 x。(第 13 行应该是 c("m","n"),第 1 行应该是 c("a","z"))
我用来处理这个问题的方法目前看起来很复杂和间接。你的方法是什么?请记住,我的数据不一定像这样的顺序很好,但顺序应该保持在x
. 我的偏好是不依赖于基础 R 的解决方案。