У меня есть два data.frames df1
и df2
, df1
имеет 12,869 строк и имеет df2
173398. df1
имеет 2 колонки первым является числовым, а второй является символом. df2
имеет также 2 столбца как числовые. Я хочу заменить числа в df2
на основе значений символов df1[,2]
. Вот как глава моих data.frames выглядит следующим образом:значения совпадают с data.frames с различным количеством строк
>head(df1)
ids genes
1 1 NSD1
2 2 MAST2
3 3 PHB
4 4 IKBKAP
5 5 CDC42
6 6 SAT1
>head(df2)
X1 X2
1 933 3982
2 1791 2504
3 3379 3394
4 1381 9732
5 2002 6408
6 3947 7579
Большое спасибо
Я пробовал эти два подхода:
df2[,1] <- setNames(df1$genes, df2$X1)[as.character(unlist(df2[,1]))]
df2[,1] <- df2[match(df1[,1], df2[,1]),2]
Но они не работают
спасибо @Mark Hechkman, он работает и довольно быстро. – user2380782