首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用biopython查询NCBI数据库

欢迎关注”生信修炼手册”!

NCBI网站是最常用的生物信息数据库之一,集成了pubmed,genebank等子数据库。最简便的用法当然是直接在网站上检索,为了方便检索,NCBI提供了自己的检索系统,称之为Entrez。

对于想要在命令行访问NCBI的人而言,NCBI也提供了Eutils工具,可以通过对应的API在命令行操作。biopython将Eutils工具进行了封装,通过Bio.Entrez子模块,可以在python环境中与NCBI进行交互。

E-utilities是由8个小程序组成的工具集,能够将符合语法规则的URL转换为对应数据库的检索条件,并返回检索结果,是Entrez检索系统和NCBI数据库的接口,biopython也提供了对应的功能

1. EInfo

该方法用于查看数据库的基本信息,用法如下

在使用这个系统时,我们必须提供一个邮箱地址,当你访问频繁或者违反了Eutils的使用规范时,会通过邮件与你沟通。Entrez.read方法将结果读取为一个dict对象,这样方便在python中查看和处理信息。

EInfo也可以查询某个特定的数据库的信息,用法如下

2. ESearch

该方法用于检索特定的数据库,提供数据库名称和检索的关键词即可,用法如下

在查询结果中,会返回数据库中的ID,可以结合后续的其他命令来下载。

3. EPost

该方法用于上传待查询的ID到NCBI服务器,一次可以上传多个ID, 用法如下

上传之后可以获取webenv, query_key变量的值,这些值可以通过efetch等命令来获取并下载对应的记录。

4. ESummary

该方法用于下载对应的摘要信息,用法如下

5. EFetch

该方法用于下载数据库中的内容,用法如下

通过rettype和retmode参数可以指定下载文件的格式,对于批量下载,推荐将下载之后的数据另存为文件,然后在通过Bio.SeqIO模块来读取。

6. ELink

该方法用于数据库之间的交叉查询,用法如下

以上例子展示了在gene和clinvar两个数据库之间进行交叉查询的方式,根据基因ID获取对应的clinvar数据库中该基因上包含的突变位点的信息。

7. EGQuery

该方法用于统计检索项在各个数据库中检索到的条目,用法如下

8. ESpell

该方法用于自动校正拼写错误,用法如下

在实际使用中,ESearch, ELink, EFetch这3个命令时最为常用的,通过ESearch和ELink进行查询,获取对应的数据库ID, 然后通过EFectch命令进行下载。

·end·

—如果喜欢,快分享给你的朋友们吧—

原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!

本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210103A0CTNS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券