hmmer,和blast类似,也是一款用于寻找同源序列的软件,其出现晚于blast,与blast所使用的算法不同,hmmer使用的是隐马尔科夫模型,隐马尔科夫模型的简介以及在序列比对中的应用我之前有写过一篇短文,有兴趣可以参读一下:隐马尔可夫模型在序列比对和基因预测中的应用。使用hmmer和blast各有长短,在某些情况下两者的效果差不多,有时候会有稍大差距。

hmmer也有在线版以及本地版,在线版由ebi维护,地址为https://www.ebi.ac.uk/Tools/hmmer/,hmmer官网为http://www.hmmer.org/,在此处可以找到hmmer的安装包,进行下载安装。

本文简要介绍一下,本地版hmmer的基本使用方式。

文章目录

  • 使用hmmer进行同源搜索之前
    • 制作矩阵
    • 序列库
  • 同源序列搜索
  • 处理结果

使用hmmer进行同源搜索之前

制作矩阵

hmmer的使用不同于blast,blast直接将query(查询)序列与目标基因组或者序列进行比对,而hmmer则是利用的其自身生成的矩阵来进行同源搜索,因此在正式开始搜索之前,需要首先根据query序列制作一个hmmer矩阵,制作hmmer矩阵的查询序列可以为多条,这些查询序列需要先进行多序列比对,多序列比对之后的结果再通过hmmer的工具hmmbuild来制作对应的矩阵。

若是只有一条查询序列,也是可以使用hmmbuild来制作矩阵的,但是可能没有使用多条查询序列找到的同源序列的结果多。同时hmmer中还有phmmer或者jackhmmer等工具,它们能够将一条序列作为查询序列直接搜索序列库,但我想其内部应该也是先根据这条传入的序列生成了矩阵后再进行同源搜索的。

hmmer生成矩阵后就能够用于在序列库中搜索与查询序列同源的序列了,这里要注意在hmmer中没有和blast一样的四种搜索方式(没有蛋白搜核酸以及核酸搜蛋白),hmmer中只能够进行核酸搜索核酸序列库或者蛋白搜索蛋白序列库的操作。若是要进行其它搜索,可能需要自行处理一下结果或者查询序列。

序列库

hmmer所搜索的target是序列库,而并不是整个传入基因组之类的。序列库也就是一个fasta文件,其中全是一条一条单独的序列,hmmer将对其中的每条序列进行同源搜索,以判断此序列是否和查询序列有同源性。因此若是有特定的序列想要判断其与查询序列的同源性,只需要将所有序列都放在同一个fasta文件中,这样就形成了一个hmmer可以查询的序列库。

在blast中,对某个基因组的搜索需要先将基因组制作为db形式(makeblastdb命令)。在hmmer中,也是不能直接搜索整个基因组的,因此要搜索的基因组就需要先被制作为序列库形式,这样的序列库可以通过一些预测基因组ORF的软件来完成,我最近使用到的就是prodigal这款软件,其使用比较方便,还可以将核酸序列直接翻译为蛋白序列,上篇文章介绍过,有兴趣可以参考一下啊。链接在这。

同源序列搜索

制作完矩阵以及序列库后,就能够进行同源序列的搜索了,在hmmer中有多个命令供我们使用,命令如下:
在命令介绍中提到的profile一般就是指的要使用的矩阵,简单介绍几个可能较常用的命令:

  • hmmbuild:通过多序列比对得到的结果制作矩阵,使用方式为:hmmbuild test.hmm test.fas,其中test.fas为多序列比对结果,test.hmm则为产生的矩阵
  • hmmsearch:使用矩阵来搜索一个序列库(可以是核酸搜核酸或蛋白搜蛋白)
  • phmmer:使用一条序列在序列库中进行同源搜索
  • jackhmmer:同phmmer,但是其搜索方式为在序列库中迭代搜索,直到搜索不到为止,默认最大搜索次数为5,可以自行调整,这种方式在搜索宏基因组时应该很好用
  • nhmmer:使用核酸序列在核酸序列库中搜索
  • 在使用上面提到的命令时,还有一些参数也可以调整,例如evalue(E)、线程数(cpu)、调整输出结果的形式(tblout等),这些可用参数都十分容易查询到,就不多介绍了

处理结果

通过各种搜索得到的结果都是文本文件,从这些文件中提取结果即可,这里展示一下两种结果的部分截图:

jackhmmer的结果

这里结果我没有使用表格形式,读者可以自己设置为输出表格形式。上图中以+号开始的行表示这行的结果是新找到的,通过序列名到序列库中去寻找找到的对应的同源序列进行提取即可。

hmmersearch的结果:

这里类似blast,输出的为表格形式。

hmmer和blast各有长处,可以在使用时取长补短。

还有未提到的其它功能读者在使用时可以自行探索。

blast的替代品,使用hmmer寻找同源序列相关推荐

  1. HPC应用软件安装《hmmer》

    一.简介 HMMER通常与已构建好的HMM数据集一起使用,例如Pfam以及Interpro收纳的一些数据库.同时HMMER也可以像BLAST一样使用查询序列,对序列数据库(非HMM数据库)进行检索.例 ...

  2. 基于TBtools做基因家族分析教程 (全)

    基因家族分析笔记-全部开始记录 一. 写在前面 2023年4月中旬自己开始做基因家族的分析,对于这块自己没有接触过,因此也是一个挑战,没事!!!(安慰自己),对于基因家族的分析网上的教程很多,跟着步骤 ...

  3. 四大顶级专家谈AlphaFold2:关于技术细节、局限与意义

    2020-12-16 03:25:07 AlphaFold2的胜利就像是一场接力赛,往往是跑到最后一棒的人会有更多的高光时刻.但是,我们依然要记住为这门学科贡献智慧的人. 来源 | 医健AI掘金志 作 ...

  4. 基因组共线性工具MCScanX使用说明

    基因组共线性工具MCScanX使用说明 简介 MCScanX工具集对MCScan算法进行了调整,用于检测共线性和同线性区域,还增加了可视化和下游分析..MCscanX有三个核心工具,以及12个下游分析 ...

  5. linux下pfam使用方法,利用Pfam数据库的信息做转录因子的分类

    我们知道蛋白一般由一个或多个功能域所组成,在不同蛋白质组合中出现的不同结构域导致了自然界中蛋白质复杂的多样性.鉴定一个蛋白中的结构域有助于更深入地理解蛋白功能.其中Pfam是一个大型蛋白结构域家族的数 ...

  6. iMeta | 华中科大宁康组综述宏基因组数据用于蛋白质三维结构预测的方法论

    点击蓝字 关注我们 Review:用于蛋白质结构预测的宏基因组定量分析 https://doi.org/10.1002/imt2.9 2022/3/6 ● 2022年3月6日,华中科大宁康组在iMet ...

  7. matlab treeplot,matlab creats phylogenetic tree

    constructor--利用NJ模型,构建phyology tree和heat map,进行聚类分析, Data Formats and Database--阅读数据库(如:NCBI,GEO,PDB ...

  8. Beyond Compare 的开源替代工具meld

    Beyond Compare的试用期过了,又不想用破解软件,就想找个开源的替代品. 苦苦寻找,各种试用,最佳替代品出炉了:meld  Meld ---------------------------- ...

  9. 生物信息学必备网站大全

    生物信息学与生物计算:http://bioinformatics.weizmann.ac.il/ 这是生物信息学和生物计算学的网站,由Weizmann科学研究所,生物服务部和Crown人类基因组学中心 ...

  10. 保罗.格雷厄姆:如何获得创业Ideas | How to Get Startup Ideas

    保罗.格雷厄姆:如何获得创业Ideas |  How to Get Startup Ideas 译者注: 创业.创新有很多共通之处.不是拉出一支人马单干才是创业,在公司内部干全新的项目也是创业.   ...

最新文章

  1. 参数binlog_row_image设置MINIMAL,你今天被坑了吗?
  2. 阅读笔记: 凸包的例子(一)
  3. 3.4 滑动窗口的卷积实现-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
  4. Application is running in standard simulation mode
  5. ROS笔记(21) 地图
  6. Redis 基本数据类型
  7. 理解 Delphi 的类(十一) - 深入类中的方法[12] - 消息方法
  8. 树莓派4烧录系统后黑屏_原创试用 | 树莓派3B+测评(二)ubuntu系统烧录+彩虹屏问题解决...
  9. Yii Framework2.0开发教程(1)配置环境及第一个应用HelloWorld
  10. 求n从1到20阶乘的和(即1+2!+3!+4!+...+20!)
  11. python爬虫登录微博_[突如其来]python爬虫模拟登录微博
  12. CityEngine -- Coordinate
  13. vim 无法使用backspace 删除键进行删除
  14. paddle 标注_一看就会,手把手教你编程,批量文章标注拼音(附源码)
  15. 前端入门【HTML5】
  16. 杭电计算机复试面试题库,杭电电子分院历年复试题(整理版)
  17. JavaWeb(总+完结)
  18. swing开发五子棋
  19. 弹性响应蒸馏 | 用弹性响应蒸馏克服增量目标检测中的灾难性遗忘
  20. 服务器 硬盘 热,服务器硬盘热插拔数据会丢失吗

热门文章

  1. 如何做抖音小程序赚钱?抖音小程序怎么赚钱?抖音最简单的赚钱方式
  2. 设置图片在Unity中的默认打开方式
  3. Hyrax: Doubly-efficient zkSNARKs without trusted setup学习笔记
  4. 计算机id dns知识,智能DNS解析知识集锦
  5. tomcat之连接器
  6. activiti选择上一步下一步处理人
  7. 解决winform中的panel重绘闪烁问题
  8. oracle11g卸载出错 无法删除文件,文件正在使用中
  9. 【语音增强论文解读 03】TCNN: TEMPORAL CONVOLUTIONAL NEURAL NETWORK FOR REAL-TIME SPEECHENHANCEMENT IN THE TIME
  10. 安装Mendeley后Word中没有出现对应的Mendeley插件