【annotation】非人类物种基因组注释(MSU为例)
基因组注释工具ANNOVAR是一款非常好用的注释软件,功能强大,输出数据简单美中不足就是对于非人类物种来说UI不够完善,因此总结一下整个注释的过程,帮助别人快乐自己。
首先我们需要明确我们需要的数据和软件:
数据包括:
all.gff3 #MSU的v7.0版本组装的注释文件
all.con #基因组序列
这样就是所有的输入文件了,现在我们列举一下需要用到的软件:
gffread #gff3 to gtf
gtfToGenePred #gtf to genePred (建库需要的文件)
annovar #注释主程序,只能通过发邮件获取
有了这些我们就可开始做注释了、
一、建库
如果是给人类的基因组注释,网上有非常多的教程,我在这里就不赘述了,请大家自行百度,我要介绍的主要是水稻及其他非人类的生物注释。
首先我们需要在获得ANNOVAR之后在目录下解压,在软件主目录下新建文件夹:
genomics@genomics-70DGA01QCN:~/BioPlatform/annovar$ ls -l
总用量
-rwxr-xr-x genomics genomics 4月 annotate_variation.pl
-rwxr-xr-x genomics genomics 4月 coding_change.pl
-rwxr-xr-x genomics genomics 4月 convert2annovar.pl
drwxr-xr-x genomics genomics 4月 example
drwxr-xr-x genomics genomics 4月 humandb
-rwxr-xr-x genomics genomics 4月 retrieve_seq_from_fasta.pl
-rwxr-xr-x genomics genomics 4月 table_annovar.pl
-rwxr-xr-x genomics genomics 4月 variants_reduction.pl genomics@genomics-70DGA01QCN:~/BioPlatform/annovar$ mkdir ricedb
ricedb就是我们需要建库的文件夹了,和同目录下的humandb是一样的,在这个文件夹中需要有两个文件
genomics@genomics-70DGA01QCN:~/BioPlatform/annovar/ricedb$ ls -l
总用量
-rw-rw-r-- genomics genomics 10月 AsianRice_MSU.fasta
-rw-rw-r-- genomics genomics 2月 AsianRiice_MSU.gff3
gff文件会报错所以第一步要转换成gtf文件
genomics@genomics-70DGA01QCN:~/BioPlatform/annovar/ricedb$ gffread AsianRiice_MSU.gff3 -T -o AsianRice_MSU.gtf
gtf文件转换成GenePred文件,利用GtfToGenePred工具,这里注意“-genePredExt”这个参数一定要加上
genomics@genomics-70DGA01QCN:~/BioPlatform/annovar/ricedb$ gtfToGenePred -genePredExt AsianRice_MSU.gtf Os_refGene.txt
结合基因组数据获得另外一个重要数据,通过上边获得的GenePred文件:
perl ../retrieve_seq_from_fasta.pl --format refGene --seqfle all.fa Os_refGene.txt --out Os_refGeneMrna.fa
这样我们建库工作就完成了,下次再对相同物种数据进行注释的时候就不用进行这些操作了,库的两个文件组成如下:
genomics@genomics-70DGA01QCN:~/BioPlatform/annovar/ricedb$ ls -l
-rw-rw-r-- genomics genomics 1月 : Os_refGeneMrna.fa
-rw-rw-r-- genomics genomics 1月 : Os_refGene.txt
二、非人类物种注释
相比与人类的注释,其他物种的注释如果完成了建库的步骤剩下的就很相似。区别在于其他物种并没有人类那么多相关的注释库,一般我们就进行基于基因的注释就可以获得我们想要的数据:
perl table_annovar.pl <variant.vcf> ricedb/ --vcfinput --outfile fnal --buildver Os --protocol refGene --operation g
剩下的事情交给马克思和处理器就好了!
输出格式以及后续的处理在随后的博文中会有详细的介绍。
【annotation】非人类物种基因组注释(MSU为例)的更多相关文章
- 使用BRAKER2进行基因组注释
来自:https://www.jianshu.com/p/e6a5e1f85dda 使用BRAKER2进行基因组注释 BRAKER2是一个基因组注释流程,能够组合GeneMark,AUGUSTUS和转 ...
- 答读者问(1):非模式物种找marker;如何根据marker定义细胞类型
下午花了两个小时回答读者的疑问,觉得可以记录下来,也许能帮到一部分人. 第一位读者做的是非模式物种的单细胞. 一开始以为是想问我非模式物种的marker基因在哪儿找,读者朋友也提到了blast 研究的 ...
- 人类及其他物种基因组DNA之问
问题1 : 不同人类个体的基因组长度总长是不是一样,如果不一样,那么人类基因组长度排序和范围区间是如何控制的?最短是多少,最长是多少?如果一样,如何理解基因的插入与缺失,INDEL等现象,如何平衡的呢 ...
- 植物基因组|注释版本问题|重测序vs泛基因组
生命组学: 细菌和其他物种比,容易发生基因漂移,duplication和重排. 泛基因组学研究的一般思路是通过comparison找到特殊基因区域orspecific gene,研究其调控机制(即通过 ...
- Bedtools如何比较两个参考基因组注释版本的基因?
目录 问题 思路 问题 原问题来自:How to calculate overlapping genes between two genome annotation versions? 其实可分为两个 ...
- 【基因组注释】ncRNA注释
目录 1. ncRNA 2. 软件 tRNA注释 rRNA注释 其他ncRNA注释 3. 注释 tRNA rRNA snRNA.miRNA等 4. snRNA.miRNA等结果的统计 1. ncRNA ...
- 【基因组注释】同源注释比对软件tblastn、gamp和exonerate比较
基因结构预测中同源注释策略,将mRNA.cDNA.蛋白.EST等序列比对到组装的基因组中,在文章中通常使用以下比对软件: tblastn gamp exonerate blat 根据我的实测,以上软件 ...
- 【基因组注释】RepeatMasker和RepeatModeler安装、配置与运行避坑
目录 1.conda安装 2.配置RepBase 3.RepeatMasker避坑 4.RepeatProteinMask避坑 5.RepeatModeler避坑 6.自定义重复序列库 后记 1.co ...
- 关于基因组注释文件GTF的解释
GTF文件的全称是gene transfer format,主要是对染色体上的基因进行标注.怎么理解呢,其实所谓的基因名,基因座等,都只是后来人们给一段DNA序列起的名字而已,还原到细胞中就是细胞核里 ...
随机推荐
- Windows系统Git安装配置
Git的安装 Git是一个开源的分布式的版本控制软件,是Linus Torvalds 为了方便开源贡献者协同开发和管理 Linux 内核开发替代BitKe而开发的. 打开git官网的下载地址:http ...
- 触发器中的after与before理解
做一个表的insert的trigger,目的是只修改插入行的字段. CREATE OR REPLACE TRIGGER TR_RME_SLOT BEFORE INSERT ON RME_SLOT FO ...
- PHP算法学习(7) 双向链表 实现栈
2019年2月25日17:24:34 final class BasicNode { public $index; public $data; public $next = null; public ...
- High Performance Networking in Google Chrome
小结: 1. 小文件存储于一个文件中: 在内部,磁盘缓存(disk cache)实现了它自己的一组数据结构, 它们被存储在一个单独的缓存目录里.其中有索引文件(在浏览器启动时加载到内存中),数据文件( ...
- 【C++】括号匹配
#include<iostream> #include<cstring> #include<cstdlib> #include<queue> using ...
- docker上部署rabbitmq
1.docker search rabbitmq 2.docker pull rabbitmq:3.6 3.docker run -d -p 5672:5672 -p 15672:15672 --na ...
- Autofac之生命周期和事件
Autofac为注册的类型对象提供了一套生命周期事件,覆盖了一个类型从注册到最后“释放”的一套事件.有了这些事件,我们可以相对方便的在类型对象的各个阶段进行AOP操作. builder.Registe ...
- DOM---节点关系
DOM可以说是把文档当成一种树状结构,这种结构被称为节点树,JavaScript脚本可以通过节点树访问所有节点,可是执行修改或者是删除它们的内容,同时也可以创建新的节点. 节点之间的关系是有上下级别的 ...
- [jquery.validate]自定义方法实现"手机号码或者固定电话"的逻辑验证
最近项目开发中遇到这样的需求“手机号码或者固话至少填写一个”,如下图所示: 项目采用的jquery.validate.js验证组件,目前组件不支持这种“或”逻辑的验证,于是就自己定义一个 jQuery ...
- mysql表类型导致的 setRollbackOnly() 事务不回滚
在SpringBoot 中,使用事务非常简单,只需在方法上面加入 @Transactional 注解就可以实现.也可加在类上,此时则类中所有方法都支持事务. 而当我使用下面代码时,发现事务却没有回滚 ...