image.png
这道题很简单,但是应该更重要的是学会用R的方法,我后面会用R把这个系列的题目重做一遍,这里先用python做。
ID转换主要就是构建对应关系的字典
先看一下文件的内容
对应关系文件
head geneid2symbol.txt1 A1BG2 A2M3 A2MP19 NAT110 NAT211 NATP12 SERPINA313 AADAC14 AAMP15 AANAT
geneID文件
head my_geneID.txt1175 2263 1581 4091 1783 2051 2248 22941 1410 881
脚本
import collections
geneDict=collections.OrderedDict()with open ("geneid2symbol.txt") as fh: for line in fh:
lineL=line.strip().split("t")
gene_id=lineL[0]
symbol=lineL[1]
geneDict[gene_id]=symbolfor line in open("my_geneID.txt"):
line=line.strip()
print(geneDict[line])运行结果
python3 exchange.py AP2S1 FGFR2 CYP7A1 SMAD6 DYNC1LI2 EPHB6 FGF3 SHANK2 CRYAB CCIN CHKB TSPAN2 YAF2 ZFC3H1 ATP6V0E2 LOC101929524 PCCA HLA-DRB6 TMC6 JTB POLD1 LHCGR WBP4 FGL2 DEPDC5 EAPP RRAS B3GALT5 DESI2SCN7A
其他的,geneID,symbol,ensembleID,entrez ID,probe ID 等等之间的转换,方法是一样的
作者:天秤座的机器狗
链接:https://www.jianshu.com/p/527fcdbb2d11



