【发布时间】:2018-09-18 15:13:03
【问题描述】:
我正在尝试基于两个变量(Entrez.ID 和 Gene.ID)合并两个数据框。一个数据框只有这些变量,例如
Entrez.ID Gene.ID
10007 GNPDA1
10016 ALG2
10044 SH2D3C
和一个具有三个变量的数据框,例如
Entrez.ID Gene.ID Ensembl.ID
10007 GPI ENSG00000113552
10016 PDCD6 ENSG00000249915
10044 CHAT ENSG00000095370
目前当我使用以下方式合并文件时:
df<-merge(df1,df2,by=c("Entrez.ID","Gene.ID"),all=TRUE)
我得到一个看起来像这样的数据框:
Entrez.ID Gene.ID Ensembl.ID
10007 GNPDA1 <NA>
10007 GPI ENSG00000113552
10016 ALG2 <NA>
10016 PDCD6 ENSG00000249915
10044 SH2D3C <NA>
10044 CHAT ENSG00000095370
但我想要创建的是一个看起来像这样的数据框:
Entrez.ID Gene.ID Ensembl.ID
10007 GNPDA1 ENSG00000113552
10007 GPI ENSG00000113552
10016 ALG2 ENSG00000249915
10016 PDCD6 ENSG00000249915
10044 SH2D3C ENSG00000095370
10044 CHAT ENSG00000095370
我如何告诉 R Entrez.ID 变量匹配的位置,我希望 Ensembl.ID 匹配(即在可用的情况下用 Ensembl.ID 替换 NA)?
【问题讨论】:
标签: r merge pattern-matching na