hmmer 简明教程

在工作中,遇见了很多需要使用的hmmer的内容,但是发现中文内容中没有太多良好完整的教程,这里考虑按照官方的Userguide的顺序简要的写一下hmmer的主要功能:

hmmer是什么

HMMER is used for searching sequence databases for sequence homologs, and for making sequence alignments. It implements methods using probabilistic models called profile hidden Markov models (profile HMMs).

HMMER is often used together with a profile database, such as Pfam or many of the databases that participate in Interpro. But HMMER can also work with query sequences, not just profiles, just like BLAST. For example, you can search a protein query sequence against a database with phmmer, or do an iterative search with jackhmmer.

HMMER is designed to detect remote homologs as sensitively as possible, relying on the strength of its underlying probability models. In the past, this strength came at significant computational expense, but as of the new HMMER3 project, HMMER is now essentially as fast as BLAST.

HMMER can be downloaded and installed as a command line tool on your own hardware, and now it is also more widely accessible to the scientific community via new search servers at the European Bioinformatics Institute.

以上是官网的介绍,简单来说,hmmer是使用隐马尔可夫模型,在序列数据库中搜索同源序列,并进行序列比对的工具箱,拥有比blast更高的准确性和相同的速度。常用的Pfam数据库和Resfam数据库都提供hmmer的操作格式。

hmmer工具箱的内容

以下包含了hmmer最新版本的全部工具

hmmbuild: build profile from input multiple alignment
hmmalign: make multiple sequence alignment using a profile
hmmsearch: search profile against sequence database
hmmscan: search sequence against profile database
hmmpress: prepare profile database for hmmscan
phmmer: search single sequence against sequence database
jackhmmer: iteratively search single sequence against database
nhmmer: search DNA query against DNA sequence database
nhmmscan: search DNA sequence against a DNA profile database
hmmfetch: retrieve profile(s) from a profile file
hmmstat: show summary statistics for a profile file
hmmemit: generate (sample) sequences from a profile
hmmlogo: produce a conservation logo graphic from a profile
hmmconvert: convert between different profile file formats
hmmpgmd: search daemon for the hmmer.org website
hmmpgmd_shard: sharded search daemon for the hmmer.org website
makehmmerdb: prepare an nhmmer binary database
hmmsim: collect score distributions on random sequences
alimask: add column mask to a multiple sequence alignment

其中我们常用的也只有hmmbuild、hmmsearch、hmmscan、hmmalign

安装 hmmer

推荐使用conda:

conda install -c bioconda hmmer
#or
conda install -c bioconda/label/cf201901 hmmer

Searching a sequence database with a profile

步骤1:用hmmbuild建立一个profile

使用文件为http://eddylab.org/software/hmmer/hmmer.tar.gz解压缩后hmmer-3.3.2/tutorial/文件夹
文件globins4.sto是一种对齐序列的格式,文件内容包括:

image.png

使用hmmbuild:
hmmbuild globins4.hmm globins4.sto
输出:

# hmmbuild :: profile HMM construction from multiple sequence alignments
# HMMER 3.3.2 (Nov 2020); http://hmmer.org/
# Copyright (C) 2020 Howard Hughes Medical Institute.
# Freely distributed under the BSD open source license.
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# input alignment file: globins4.sto
# output HMM file: globins4.hmm
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# idx name nseq alen mlen eff_nseq re/pos description
#---- -------------------- ----- ----- ----- -------- ------ -----------
1 globins4 4 171 149 0.96 0.589
# CPU time: 0.05u 0.00s 00:00:00.05 Elapsed: 00:00:00.05

globins4.hmm内容为:
image.png
步骤2:使用hmmsearch搜索序列数据库

hmmsearch globins4.hmm uniprot_sprot.fasta > globins4.out
hmmsearch接受FASTA格式,同时也接受EMBL/UniProtKB文本格式和Genbank格式,能够自动检索文件的格式

globins4.out文件解释:
-第一部分是头文件,它告诉您运行什么程序,在什么上运行,使用什么选项

image.png

-第二部分是hit的列表,按照e值排序类似blast的m8格式
image.png

最后两列每个目标序列的名称和可选描述。描述行通常会被截短,以保持行长度在合理范围内。如果您想要完整的描述行,并且不介意输出行太长,可以使用--notextw选项。

最重要的指标是e-value,表明hit的假阳性预期,e值是衡量统计显著性的指标e值越低,说明命中越明显。通常考虑具有e值的序列< 10−3左右为显著命中。

其次score是 bit score,有些人喜欢看到bit score而不是e值,因为bit score不取决于序列数据库的大小,只取决于.hmm和目标序列。e值则取决于您搜索的数据库的大小:如果您搜索的数据库大小是原来的10倍,那么您得到的e-value是原来的10倍。

最后一个数字是bias,也就是score的残差,是用于bit score的偏置序列组合的修正项。只有在残差特别大的时候才需要注意。

接下来三个数字也是E-value, score, 和 bias,但只针对序列中得分最高的一个结构域,而不是其所标识的所有结构域的和。这在本例中并不明显,因为这个例子中的所有珠蛋白都只包含一个单一的珠蛋白结构域。

由于在使用hmm搜索的过程中,可能出现有多个得分低的结构域凑成高得分总比对的结果,因此推荐的筛选方法是:

  1. 如果两个e值都是显著的(<< 1),既存在高同源的可能性
  2. 如果全序列e值显著,而单个最佳域e值不显著,则目标序列可能是一个多multidomain remote homolog,注意这只是重复序列的情况

教程原文:HMMER User's Guide (eddylab.org)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343

推荐阅读更多精彩内容