假設我有一個df,如下所示。用另一個表替換列
df <- read.table(textConnection("
id1 id2 id3 inter
1 2 3 7.343
6 5 4 2.454
1 5 6 3.234
"), header = TRUE)
而且我想,以取代由源數據框柱id1
,id2
和id3
。
source <- read.table(textConnection("
sid rid
1 a
2 b
3 c
4 43454
5 2254
6 43
"), header = TRUE)
如果我能找到source$sid
等於df$id1
,df$id2
,或者df$id3
, 那麼我想替換他們作爲source$rid
。
因此我可以看到。
id1 id2 id3 inter
a b c 7.343
43 2254 43454 2.454
a 2254 43 3.234
有什麼提示嗎?
嘗試'DF [] < - lapply(DF,函數(X ){i1 < - match(x,source $ sid); i2 < - !is.na(i1); x [i2] < - as.character(source $ rid)[i1 [i2]]; x})' – akrun