利用perl下载OMIM数据

Posted 生信草堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用perl下载OMIM数据相关的知识,希望对你有一定的参考价值。

生信草堂

号外,号外,号外

你想和生信分析大神做好朋友么?

你想认识更多爱好生信分析的小伙伴么?

你想让自己的生信分析走上快车道么?

添加我们的微信bioinformatics88为好友

标注“加入生信草堂交流群

在群里请大家注明自己本名,单位,研究领域

便于小编管理


OMIM简介

OMIM 为“Online Mendelian Inheritance in Man”的简称,是医学遗传学最权威的百科全书,包括所有已知的遗传病、遗传决定的性状及其基因的相关描述,除了简略描述各种疾病的临床特征、诊断、鉴别诊断、治疗与预防外,还提供已知有关致病基因的连锁关系、染色体定位、组成结构和功能、动物模型等资料,并附有经缜密筛选的相关参考文献。OMIM 制定的各种遗传病、性状、基因的编号,简称MIM号,为全世界所公认。



OMIM 提供了API检索,即通过特定的语法搜索感兴趣疾病或者基因的MIM Number,就可直接获得相关信息。感兴趣的老师同学可以通过以下网页进行了解学习:https://omim.org/help/api。但是相信没多少人愿意花时间学习API检索吧,因此本人就利用perl语言,嵌入OMIM的API检索语法,不需要大家再了解API的知识就能更方便更快速地直接获取OMIM的数据。接下来本人就详细介绍如何利用perl以及OMIM的API批量获取OMIM的数据。


利用perl下载OMIM数据

利用perl下载OMIM数据


1
首先这里简单介绍一下OMIM包含的数据内容,每个MIM号检索到的信息不外乎以下内容:

利用perl下载OMIM数据


我们以基因EGFR(MIM:131550)为例,在OMIM官网检索,可看到如下结果:


利用perl下载OMIM数据


左侧的索引即EGFR基因所收录的信息,我们的目的就是将该基因收录的这些信息全部下载保存到本地。


2
获取API权限

OMIMAPI权限是需要申请的,在https://omim.org/api申请,把邮箱、单位和使用目的填写一下提交即可,申请通过率较高,申请通过后邮箱就会收到API key,这是我们的脚本必须用到的,有了API key才有权限获取OMIM的数据。申请得到的API key会有期限限制,如果过期需要重新申请。


3
获得OMIM所有基因及表型的ID,即MIM numbers

在https://omim.org/downloads/下载mim2gene.txt,该文件包含 OMIM数据库中收录的所有基因及疾病表型的MIM number。该文件是可以公开下载的,我们利用该文件获取所有感兴趣基因的MIM number。值得注意的是该文件虽然收录了所有的基因及疾病表型的MIM number,但是该文件只显示了对应基因型的信息,而并没有表型的信息,因此我们只能通过该文件获取已知基因型对应的MIN number,而疾病表型对应的MIM number则是需要注册后(https://omim.org/downloads)下载morbidmap.txt文件得到。mim2gene.txt文件部分展示如下:


利用perl下载OMIM数据


morbidmap.txt文件部分展示如下:


利用perl下载OMIM数据


4
Perl脚本使用说明

脚本代码如下:


利用perl下载OMIM数据


以windows环境为例,展示脚本运行过程

1进入windows 的cmd环境,cd 进入脚本所在的文件夹目录


运行命令行可获得帮助信息:

Command:  perl  Extract_target entry_from_OMIM.pl  -h



2下载单个目的MIM number信息


以肺癌为例,肺癌在OMIM中的MIM number#211980,我们通过脚本下载肺癌的相关信息,命令如下:

Command:  perl  Extract_target entry_from_OMIM.pl  -e  211980


脚本运行后在该目录生成一个名为Entry_211980.txt的文件,该文件即包含肺癌相关的信息,与通过OMIM官网检索得到的内容是完全一致的。Entry_211980.txt文件内容如下:


利用perl下载OMIM数据


3下载批量目的MIM number信息


首先将要下载的所有MIM number保存在一个txt文本中,MIM number可从mim2gene.txt文件中得到,但是如前文所言,该文件只能得到基因型的MIM number,表型的MIM number需注册或者从另外途径得到。最后格式见样本文件: OMIM_entry_example.txt(该文件第二列为备注信息,可不添加)


利用perl下载OMIM数据


运行程序:

Command:  perl  Extract_target entry_from_OMIM.pl  –f  OMIM_entry_example.txt


运行脚本后在目录中会依次生成以MIM number命名的文件,包含各自对应的信息,即OMIM中下载到的数据。


利用perl下载OMIM数据


到这里,我们已经基本明白如何利用perl下载OMIM数据,是不是很简单。通过运行简单perl脚本,即可快速、方便地批量获得或下载OMIM信息,然后可建立脱机、本地化的OMIM数据库,并随时更新,也可与其他数据数据库接口关联,获得更多的注释信息。


利用perl下载OMIM数据

PS:

文中该脚本的API key已经过期失效,考虑到API key如果公开会被滥用而遭封锁,因此本文不提供API key,需要的话请自己另行注册获得,获得后替换原有代码中的API key即可(脚本中API key定位内容为:apiKey=NxXfhjnoT1GKYAk2wgHe0g)。如果需要获得脚本,请转发本文至朋友圈,并截图发送给本公众号。如点赞数达到30,便能得到API key,点赞数达到88,更能得到只有注册OMIM才能下载到的数据,如下图文件:


利用perl下载OMIM数据







以上是关于利用perl下载OMIM数据的主要内容,如果未能解决你的问题,请参考以下文章

第一条perl单行命令---获取blastdb所有数据库的下载地址

用Perl做个简单”下载者病毒”

如何检查我是不是在 Perl 中下载了整个文件?

HTML 表单操作最终下载 perl 文件而不是执行它

基于perl从ncbi的ftp站点下载文件

干货分享《生信基础+主流编程(perl_linux_python_R等)+视频+科普读物》20G限时免费下载