这是一个可以说明的数字,因为我无法通过dput和dump重现。 我尝试将for()循环与匹配或%in%结合使用,但我无法及时通过。
我想在df2中将df1中的ID与ACCESSION匹配,然后替换 " NA"在df1中,来自df2的GENE_SYMBOL。
值的顺序不同,列的大小也不同。因此,我相信我应该使用for循环+匹配或其他东西的组合。
答案 0 :(得分:0)
看起来你需要一个左连接,如:
merge(df1, df2, by.x = "ID", by.y = "ACCESSION", all.x = TRUE)
如果您使用的是dplyr
,则可以执行
library(dplyr)
left_join(df1, df2, by = c("ID" = "ACCESSION"))