生信分析,通过ensemblID检索对应protein序列

本文介绍如何使用Python的mygene库批量将Ensembl基因ID转换为Uniprot蛋白质ID,通过示例代码展示自动化流程,帮助生物信息学研究者高效处理大量数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

uniprot官网为我们提供了一个很好的平台,可以通过uniprot ID检索对应的protein序列,也可以通过ensembl ID检索到uniprot ID ,具体操作如下
ensembl ID可以通过uniprot官网转换为uniprot ID

注意下图中的Entry这个字段
通过在检索框中检索ensembl ID 可查看到多个uniprot ID 点击带星星角标的uniprot ID

图片中的序列,即为对应蛋白质完整序列

在这里插入图片描述

可以通过uniprot网站的接口直接获取对应蛋白质,但是需要获取对应的uniprot ID,图一中,Entry就是uniprot ID
图一中的Entry字段
点击即可访问到对应的蛋白质序列
每次只需修改entry字段对应的uniprot ID 即可

在这里插入图片描述

现在我们的关键在于 怎么实现批量,自动的方法将文件中的ensembl ID转换为uniprot ID 这才是重点
python 为我们提供了一个开源的第三方库
具体用方法如下,直接上代码
import mygene

# 获取mygene对象
mg = mygene.MyGeneInfo()
# 测试的ensembl ID列表
xli = [
    "ENSG00000214562",
    "ENSG00000145113",
]
# scopes原始ID类型,fields转换后ID类型
# species为对应蛋白质的种类,若存在多个种类时候,可以用逗号隔开
# species="human,mouse"
out = mg.querymany(xli, scopes="ensembl.gene", fields="uniprot", species="human")
for item in out:
    print(item)
query即为待测试的ensembl ID
Swiss-Prot为对应的uniprot ID,若存在多个值,取第一个即可

在这里插入图片描述

生信分析小白,希望本篇文章可以帮助到你们
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值