SNPEFF snp注释 (添加自己基因组)
之间介绍过annovar进行对snp注释,今天介绍snpEFF
SnpEff is a variant annotation and effect prediction tool. It annotates and predicts the effects of variants on genes
详细的说明请阅读:
http://snpeff.sourceforge.net/SnpEff_manual.html
一、安装
1 wget http://sourceforge.net/projects/snpeff/files/snpEff_latest_core.zip
2 unzip snpEff_latest_core.zip
3
4 #会产生一个snpEff目录 所有的程序都在这里面
二、配置自己的基因组和注释文件
以菠菜(spinach)参考基因组为例子:
打开snpEFF文件夹下的snpEff.contig, 增加新的物种信息,可以在任意一行添加,个人建议在 # Databases & Genomes 添加
1 # spinach_v1
2 spinach_v1.genome : spinach
建立data文件夹并且建立名为spinach_v1的文件夹 (和上述对应)
1 mkdir -p data/spinach_v1
在该文件夹下存放两个文件:
- sequences.fa
- genes.gff # (我用的是gff3格式,也可使gff2)
(一定按上述名字)
用build命令进行构建
1 # 在snpEff文件夹下运行命令
2 java -jar snpEff.jar build -gff3 -v spinach_v1
3
4 ## 参数
5 -v: 版本
6 -gff3:gff文件类型
三、开始注释
1 java -jar snpEff.jar ann spinach_v1 input.vcf.gz > snpeff.vcf
同样我们可以选择以下参数简化输出
- -no-downstream
- -no-upstream
- -no-utr
- -no-intergenic
- -no-intron
比如说我们只关注CDS中的注释信息,不考虑上游、下游、UTR、基因间区等信息
1 java -jar snpEff.jar ann -no-utr -no-downstream -no-upstream -no-intergenic spinach_v1 input.vcf.gz > snpeff.vcf
四、结果的说明
- snpEff_genes.txt
- snpEff_summary.html
两个文件记录总结性信息比较简单
*.ann.vcf 是一个注释结果文件,其就在vcf的info信息新添加了anno一列信息,其具体每个值含义如下:
- Allele
突变之后的碱基,第一个突变位点由T碱基突变成了C碱基,对应Allel的值为C
- Annotation
由sequence ontology
定义的突变类型
- Annotation_Impact
对变异位点有害程度的简单评估,取值有HIGH
, MODERATE
, LOW
, MODIFIER
4种,含义如下
- Gene_Name
基因名字
- Gene_ID
基因ID
- Feature_Type
想要分析的特征类型,transcript, motif, miRNA 等
- Feature_ID
根据Feature Type
指定的特征,给出对应的ID
- Transcript_BioType
转录本类型, 通常采用Ensembl数据库的转录本类型
- Rank
只有当变异位点位于基因区域时才有值,会给出变异位点所处的exon/intron的编号和该基因的exon/intron的总数,比如一个突变位点位于基因的第3个exon上,该基因一共有12个exon, 对应的Rank的值为3/12
当变异位点位于基因区域以外时,该字段的值为空
- HGVS.c
采用HGVS
标准命名的基因水平的变异情况
- HGVS.p
采用HGVS
标准命名的蛋白质水平的变异情况,只有当突变位点位于编码区是才会有值
- cDNA.pos/cDNA.length
突变位点在cDNA上的位置/cDNA的总长度
- CDS.pos/CDS.length
突变位点在CDS上的位置/CDS的总长度
- AA.pos/AA.length
突变位点在氨基酸序列上的位置/氨基酸序列的总长度
- Distance
变异位点与最近的特征的距离,当变异位点位于基因间区时,会给出与最近的基因之间的距离;当变异位点位于exon区域时,会给出与最近的内含子边界的距离,不同的情况,距离的定义不同。
- ERRORS/WARNINGS/INFO
对注释结果的可靠程度进行评估,各种取值代表的含义如下图
参考
关注下方公众号可获得更多精彩
SNPEFF snp注释 (添加自己基因组)的更多相关文章
- python笔记30-docstring注释添加变量
前言 python里面添加字符串注释非常简单,如何将变量放入 python 的函数注释里面呢? docstring也就是给代码加注释的内容了,python可以给函数,类.方法,模块添加注释内容,注释标 ...
- mybatis generator为实体类生成自定义注释(读取数据库字段的注释添加到实体类,不修改源码)
我们都知道mybatis generator自动生成的注释没什么实际作用,而且还增加了代码量.如果能将注释从数据库中捞取到,不仅能很大程度上增加代码的可读性,而且减少了后期手动加注释的工作量. 1.首 ...
- ADMethodsAccountManagement 一些简单注释添加
using System; using System.Collections; using System.Text; using System.DirectoryServices.AccountMan ...
- Pycharm头部注释添加
1.第一步 2.第二步 搜索框输入:File and Code Templates 然后右边找到 Python Script 3.第三步 将下面内容复制到图中红框内,然后点击OK #!/usr/bin ...
- 根据SNP的位置从基因组提取上下游序列
代码如下: #!/usr/bin/perl -w use strict; die "perl $0 <vcf> <genome>" if(@ARGV = ...
- 突变注释工具SnpEff,Annovar,VEP,oncotator比较分析--转载
https://www.jianshu.com/p/6284f57664b9 目前对于variant进行注释的软件主要有4个: Annovar, SnpEff, VEP(variant Effect ...
- EF架构~为EF DbContext生成的实体添加注释(T5模板应用)
回到目录 相关文章系列 第八回 EF架构~将数据库注释添加导入到模型实体类中 第二十一回 EF架构~为EF DbContext生成的实体添加注释(T4模板应用) 第二十二回EF架构~为EF DbCo ...
- EF架构~为EF DbContext生成的实体添加注释(T5模板应用)(转载)
转载地址:http://www.newlifex.com/showtopic-1072.aspx 最近新项目要用Entity Framework 6.x,但是我发现从数据库生成模型时没有生成字段的注释 ...
- zendstudio添加注释快捷键
最常用的是ctrl+/来添加行注释 方法是选中代码,按ctrl+/就可以注释掉代码.再按ctrl+/可以去掉注释 添加块注释时,现加/,再加*,再按enter即可添加块注释.
随机推荐
- BUAA_2020_软件工程_结对项目作业
项目 内容 这个作业属于哪个课程 班级博客 这个作业的要求在哪里 作业要求 我在这个课程的目标是 掌握软件工程的思路方法 这个作业在哪个具体方面帮助我实现目标 学习结对编程 教学班级 006 项目地址 ...
- OO_JAVA_四个单元的总结
总结本单元两次作业的架构设计 设计目标 尽量减少特殊容器的存在,能通用就通用,减少重复的类同代码. 基础容器的存在,就是为上述目标而服务的. 设计概要 底层:基础的.类型无关.无依赖的容器以及对应的查 ...
- Kotlin/Native 用KMM写Flutter插件
一.用KMM写Flutter插件 Google官方有一个写Flutter例子How to write a Flutter plugin,这里把Google plugin_codelab 例子改成用KM ...
- Noip模拟4(忁靈霁) 2021.6.6
T1 随(Rand) 由杠哥大定理可得,这题目前不可做,先跳走啦,咕咕.... T2 单(single) 考场上,简单看一眼就看出是个高斯消元,然后..... 板子没记住!!! 然而这不是最糟糕的.. ...
- SpringCloud 2020.0.4 系列之Hystrix看板
1. 概述 老话说的好:沉默是金,有时适当的沉默,比滔滔不绝更加有效. 言归正传,前面我们聊了有关 Hystrix 降级熔断的话题,今天我们来聊聊如何使用 turbine 和 hystrix dash ...
- JavaScript中的this对象指向理解
在JavaScript中,this不是固定不变的,它的指向取决于上下文环境,一般的,认为this指向使用它时所在的对象.主要有以下几类指向: 在方法中,this 表示该方法所属的对象. 如果单独使用, ...
- 转:VCS仿真vivado IP的方法
vivado中的仿真库和模型与ISE中的是不一样的,因此在vivado中使用VCS进行仿真的方法也与ISE中不一样. VCS可以通过两种方法对XILINX的器件进行功能仿真和门级仿真,这两种方法是 P ...
- 面试官问我JVM内存结构,我真的是
面试官:今天来聊聊JVM的内存结构吧? 候选者:嗯,好的 候选者:前几次面试的时候也提到了:class文件会被类加载器装载至JVM中,并且JVM会负责程序「运行时」的「内存管理」 候选者:而JVM的内 ...
- MySQL报错汇总[10/29更新]
- IDEA免费激活至2099年教程,亲测可用
申明,本教程 Intellij IDEA 最新版激活教程,激活码均收集与网络,请勿商用,仅供个人学习使用,如有侵权,请联系作者删除.如条件允许,建议大家购买正版. 以下是本人免费激活到 2099 年的 ...