【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序列起的名字而已,还原到细胞中就是细胞核里 ...
随机推荐
- less 基础+ flex
1.less 中的变量 @ 符号 引入 /*普通变量*/ @color:pinker; .styles{ color:@color; } /*选择器变量*/ @I:img; @{I}{ width: ...
- 多个if语句和else if区别
多个if是所有的if都会进行判断if else if是只要有满足条件的,就不再对之后的else if进行判断比如a = 2;if(a==1) c=1;if(a==2) c=2;if(a%2==0) c ...
- 小甲鱼零基础python课后题 P21 020函数:内嵌函数和闭包函数
测试题 0.如果希望在函数中修改全局变量的值,应该使用什么关键字? 答:globe 1.在嵌套函数中,如果希望在内部函数修改外部函数的局部变量,应该使用什么关键字? 答:nonlocal 2.pyth ...
- corefx 源码学习:SqlClient 是如何同步建立 Socket 连接的
在昨天的技术周会上发现 EnyimMemcached 中建立 Socket 连接的代码有问题,今天坐车的时候在手机上阅读 .net core 2.2 的 SqlClient 中同步建立 Socket ...
- vmware您无权输入许可证密钥,请请使用系统管理员账户重试
vmware15,输入许可证时报“您无权输入许可证密钥,请请使用系统管理员账户重试”,切换到Administrator以后,并没有什么作用. 网上的各种进入cmd的方法也无效. 后来发现,只要是已经存 ...
- 【C++】满二叉树问题
/* 给出一棵满二叉树的先序遍历,有两种节点:字母节点(A-Z,无重复)和空节点(#).要求这个树的中序遍历.输出中序遍历时不需要输出#. 满二叉树的层数n满足1<=n<=5. Sampl ...
- 从github上下载一个项目的子目录
https://github.com/pbojinov/developer.chrome.com/tree/master/extensions/examples/extensions/proxy_co ...
- static_cast 使用
static_cast 用于基本类型转换,入int转double: int distanceThreshold = 4: double val = static_cast<qreal>( ...
- 大疆2019校招FPGA笔试总结
1.对于同步fifo,每100个cycle可以写入80个数据,每10个cycle可以读出8个数据,fifo的深度至少为? 写时钟频率 w_clk, 读时钟频率 r_clk, 写时钟周期里,每B个时钟周 ...
- @RequestParam @PathVariable
1.Request参数 在访问各种各样网站时,经常会发现网站的URL的最后一部分形如:?xxxx=yyyy&zzzz=wwww.这就是HTTP协议中的Request参数,它有什么用呢?先来看一 ...