生信之旅

扫码分享下吧!
分享

Annovar的安装和使用

ANNOVAR 是一种高效的软件工具,可利用最新信息对从不同基因组(包括人类基因组 hg18、hg19、hg38 以及小鼠、蠕虫、果蝇、酵母和许多其他基因组)中检测到的遗传变异进行功能注释。ANNOVAR 可以执行:

  • 基于基因的注释:确定 SNP 或者 CNV 是否会导致蛋白质编码变化和影响氨基酸。用户可以灵活使用RefSeq genes, UCSC genes, ENSEMBL genes, GENCODE genes, AceView genes等数据库;
  • 基于区域的注释:识别特定基因组区域的变异,例如:预测的转录因子结合位点、片段重复区域等;
  • 基于过滤器的注释:识别特定数据库中记录的变异,例如,dbSNP 中是否报告了变异等;
  • 其他功能:批量检索用户特定基因组位置中的核苷酸序列,从外显子组数据和其他实用程序中识别孟德尔疾病的候选基因列表。

其官网为:https://annovar.openbioinformatics.org/en/latest/

一、安装

从官网进行下载安装即可

二、数据库下载

annovar提供了很多的数据库,在进行注释的时候,我们需要用到这些数据库。

annotate_variation.pl --buildver hg19 --downdb avdblist --webfrom annovar humandb/  # 查看hg19版本下可用的数据库

使用上诉命令后,将会在humandb目录下下载hg19_avdblist.txt.gz并解压,该文件中包含了所有可用的数据库,我们根据需要进行下载即可。例如我们在想下载hg19_avsnp150.txt.gz数据库,则运行下述命令即可

annotate_variation.pl --buildver hg19 --downdb avsnp150 --webfrom annovar humandb/

三、注释

3.1、输入格式

在进行注释之前,我们需要将我们的输入文件转换为对应的输入文件,如果是vcf文件可以直接用于注释。annovar的输入文件格式是基于文本的,前五列为chr(前缀chr是可选的),start,end,ref,alt,分隔符号为空格或者tab,同时还可以有其他附加信息列,如果参考序列不明确,可用0代替,插入、缺失、替换等,可用‘-’表示空核苷酸。在某些情况下用户可能只需要位置而不管核苷酸,这个时候ref、alt列可用0表示。如果遇到无效行,将会写入到以invalid_input为后缀文件中。

3.2、格式转换

除了自己准备输入文件外,我们还可以使用convert2annovar.pl脚本来进行格式转换,叫脚本可以处理的格式包括 Samtools genotype-calling pileup format, Illumina CASAVA format, SOLiD GFF genotype-calling format, Complete Genomics variant format, SOAPsnp format, MAQ format and VCF format,同时也可以从 dbSNP 标识符列表、转录本标识符或基因组区域生成输入文件。部分生成转换命令如下:

基于dbSNP生成输入文件:

convert2annovar.pl --format rsid rs.txt --dbsnpfile $db/hg19_snp142.txt > ${sample_name}.avinput

# rs.txt 文件中,每一行是一个rsid

基于基因组区域生成输入文件:

convert2annovar.pl -format region -seqdir humandb/hg19_seq/ chr1:2000001-2000003  # 1bp的插入或删除
convert2annovar.pl -format region -seqdir humandb/hg19_seq/ chr1:2000001-2000003 -inssize 1 -delsize 2 # 1bp的插入和2bp的删除

# 若不需要SNV或插入,则设置参数-subsize 0,默认情况下,subsize=1表示输出SNV

基于转录本生成输入文件:

convert2annovar.pl -format transcript NM_022162 -gene humandb/hg19_refGene.txt -seqdir humandb/hg19_seq/ > NM_022162.avinput

基于vcf生成输入文件:

convert2annovar.pl -format vcf4 example/ex2.vcf > ex2.avinput

3.3、注释

当输入文件准备好之后,我们就可以进行注释了。对于初学者来说,直接使用table_annovar.pl脚本进行注释比较方便。

table_annovar.pl ${sample_name}.avinput $db --buildver hg19 --out ${out} --remove --nastring . --polish --thread 10 --csvout --otherinfo -protocol refGene,cytoBand,avsnp150,clinvar_20210501,gwava --operation g,r,f,f,f

# -operation参数告诉 ANNOVAR 对每个协议使用哪些操作:g表示基于基因,gx表示基于具有交叉引用注释的基因(来自-xref参数),r表示基于区域和f表示基于过滤器。如果不提供外部参照文件,则只能进行操作g

版权声明:本文转载请注明出处!

最新评论:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

captcha

公告栏

有任何问题均可以在文章页面留言!或者邮件 burning@burning.net.cn 欢迎关注微信公众号 “生信之旅”,每天均可在菜单栏领取外卖红包、支付宝红包!最高20元!

服务器推荐

欢迎关注公众号

欢迎关注生信之旅