来自:https://www.jianshu.com/p/e6a5e1f85dda

使用BRAKER2进行基因组注释

BRAKER2是一个基因组注释流程,能够组合GeneMark,AUGUSTUS和转录组数据。

在使用软件之前,有几点需要注意下

  • 尽量提供高质量的基因组。目前随着三代测序价格下降,这一点问题不大。
  • 基因组命名应该简单,最好就是">contig1"或">tig000001"
  • 基因组需要屏蔽重复序列
  • 默认参数通常表现效果就很好,但是也要根据物种来
  • 一定要对注释结果进行检查,别直接使用

软件安装

BRAKER的依赖软件不少,且Perl需要安装的模块也很多,我们用conda能解决这些问题(需要添加bioconda频道)

安装结束后会输出一些提示信息,汇总以下就是

  • 保证AUGUSTUS的config目录能够有可写权限(自己用conda安装不需要考虑这个问题)
  • GeneMark和GenomeThreader还需要额外下载安装

我们一定要安装的就是GeneMark,需要从 http://exon.gatech.edu/GeneMark/license_download.cgi 下载安装,然后添加环境变量

此外还有一些BRAKER2建议的软件,conda没有安装,需要自己按需安装

  • DIAMOND 0.9.24: 替代NCBI-BLAST+
  • cdbfasta 0.99: 纠正AUGUSTUS预测的开放阅读框内内含有终止密码子的基因
  • cdbyank 0.981: 纠正AUGUSTUS预测的开放阅读框内内含有终止密码子的基因
  • GenomeThreader: 仅在你需要用蛋白数据进行注释时,才需要

关于这些conda未安装的软件参考https://github.com/Gaius-Augustus/BRAKER#optional-tools

cdbfastacdbyank为例

之后可以添加到环境变量

也可以复制到conda建立的braker2的环境中,其中~/miniconda3是我conda的路径

安装完成之后,建议现运行下面这一步检查软件依赖

软件运行

BRAKER根据数据类型,有不同的运行模式,但根据现状其实最常见的情况是测了一个基因组,并且还测了二代的转录组,或许还有一些近缘物种的蛋白序列。因此假设你手头有下面这些数据

  • 基因组序列: genome.fasta
  • 转录组数据: XX_1.fq.gz, XX_2.fq.gz
  • 蛋白序列: proteins.fa

第一步: 屏蔽基因组中的重复序列,这一步参考使用RepeatModeler和RepeatMasker注释基因组重复序列

这一步输出的genome.fasta.masked将是后续注释的输入

第二步: 使用STAR将FastQ比对到参考基因组,STAR使用说明参考「RNA-seq分析软件」RNA-seq比对工具STAR学习笔记

输入结果为 xx.bam 如果测了多个组装的转录组,为每个样本运行一次比对生成多个BAM文件。

第三步: 运行BRAKER2

braker.pl最多支持48个线程。

最终会输出蛋白序列和CDS序列以及GFF文件

可能问题

使用conda安装时可能会出现的问题

原因是因为faToTwoBit程序出错

这是因为conda没能正确处理依赖关系,openssl版本过高,解决方法如下

运行时出现如下警告

无视掉

参考资料

关注下方公众号可获得更多精彩

使用BRAKER2进行基因组注释的更多相关文章

  1. 【annotation】非人类物种基因组注释(MSU为例)

    基因组注释工具ANNOVAR是一款非常好用的注释软件,功能强大,输出数据简单美中不足就是对于非人类物种来说UI不够完善,因此总结一下整个注释的过程,帮助别人快乐自己. 首先我们需要明确我们需要的数据和 ...

  2. 【基因组预测】braker2基因结构注释要点记录

    目录 流程使用 问题 记录下braker2的使用要点,以备忘记. 流程使用 braker2有很多流程,根据你的数据:组装的基因组.转录组.蛋白(同源,包括近缘或远缘)选择不同流程,官网有说明: htt ...

  3. 植物基因组|注释版本问题|重测序vs泛基因组

    生命组学: 细菌和其他物种比,容易发生基因漂移,duplication和重排. 泛基因组学研究的一般思路是通过comparison找到特殊基因区域orspecific gene,研究其调控机制(即通过 ...

  4. Bedtools如何比较两个参考基因组注释版本的基因?

    目录 问题 思路 问题 原问题来自:How to calculate overlapping genes between two genome annotation versions? 其实可分为两个 ...

  5. 【基因组注释】同源注释比对软件tblastn、gamp和exonerate比较

    基因结构预测中同源注释策略,将mRNA.cDNA.蛋白.EST等序列比对到组装的基因组中,在文章中通常使用以下比对软件: tblastn gamp exonerate blat 根据我的实测,以上软件 ...

  6. 【基因组注释】ncRNA注释

    目录 1. ncRNA 2. 软件 tRNA注释 rRNA注释 其他ncRNA注释 3. 注释 tRNA rRNA snRNA.miRNA等 4. snRNA.miRNA等结果的统计 1. ncRNA ...

  7. 【基因组注释】RepeatMasker和RepeatModeler安装、配置与运行避坑

    目录 1.conda安装 2.配置RepBase 3.RepeatMasker避坑 4.RepeatProteinMask避坑 5.RepeatModeler避坑 6.自定义重复序列库 后记 1.co ...

  8. 关于基因组注释文件GTF的解释

    GTF文件的全称是gene transfer format,主要是对染色体上的基因进行标注.怎么理解呢,其实所谓的基因名,基因座等,都只是后来人们给一段DNA序列起的名字而已,还原到细胞中就是细胞核里 ...

  9. 【基因组注释】GMAP安装使用问题

    homology策略预测基因结构,下载了公共mRNA/CDS序列,考虑用gmap比对.本来是个很简单的脚本,但总是不那么顺利. 无论是用conda安装,还是源码安装较新版本,都存在问题. gmap_b ...

随机推荐

  1. 第五课第四周笔记3:Multi-Head Attention多头注意力

    Multi-Head Attention多头注意力 让我们进入并了解多头注意力机制. 符号变得有点复杂,但要记住的事情基本上只是你在上一个视频中学到的自我注意机制的四个大循环. 让我们看一下每次计算自 ...

  2. 阿里大神favoorr提供的书单

     Thoughtwoks中国的推荐书单 <http://www.douban.com/doulist/2012097/ >新浪微博-秦迪 <http://blog.2baxb.me/ ...

  3. [对对子队]Beta阶段项目展示博客

    Beta阶段项目展示博客 1 团队成员的简介和个人博客地址 成员 头像 岗位 博客 个人介绍 黄贤昊 PM 17373253 喜欢玩游戏和做游戏,项目经验基本都和游戏相关,擅长摸鱼,偶尔敬业. 吴桐雨 ...

  4. seata整合nacos完成分布式的部署

    seata整合nacos完成分布式的部署 一.背景 二.部署机器 三.部署步骤 1.在seata上创建命名空间 2.下载对应版本的seata 3.单机启动 1.修改seata配置文件 1.修改注册中心 ...

  5. 极简实用的Asp.NetCore框架再新增商城模块

    概述 关于这个框架的背景,在前面我已经交代过了.不清楚的可以查看这个链接 1.极简实用的Asp.NetCore模块化框架决定免费开源了 2.极简实用的Asp.NetCore模块化框架新增CMS模块 算 ...

  6. 线路由器频段带宽是是20M好还是40M好

    无线路由器频段带宽还是40M好. 40M的信号强,速度快.   1.20MHz在11n的情况下能达到144Mbps带宽.穿透性不错.传输距离较远 40MHz在11n的情况下能达到300Mbps带宽.穿 ...

  7. surrounded-regions leetcode C++

    Given a 2D board containing'X'and'O', capture all regions surrounded by'X'. A region is captured by ...

  8. Hive计算最大连续登陆天数

    目录 一.背景 二.算法 1. 第一步:排序 2. 第二步:第二列与第三列做日期差值 3. 第三步:按第二列分组求和 4. 第四步:求最大次数 三.扩展(股票最大涨停天数) 强哥说他发现了财富密码,最 ...

  9. css三大特性 & 选择器的权重

    层叠性 层叠性是指当一个标签被设置了多个重复的样式的时候会发生冲突,一个属性会覆盖另外一个属性. 覆盖性原则: 层叠性主要遵循的原则是就近原则,在不考虑优先级的情况下,在多个样式中最终生效的样式是离标 ...

  10. Go语言核心36讲(Go语言实战与应用一)--学习笔记

    23 | 测试的基本规则和流程 (上) 在接下来的日子里,我将带你去学习在 Go 语言编程进阶的道路上,必须掌握的附加知识,比如:Go 程序测试.程序监测,以及 Go 语言标准库中各种常用代码包的正确 ...