funny生物信息

SNP位点注释

2020-08-11  本文已影响0人  EwanH

基本概念

SNP:单核苷酸多态性主要是指在基因组水平上由单个核苷酸的变异所引起的DNA序列多态性。

SNP位点注释:顾名思义也就是把SNP位点信息和基因组信息相关联,比如有多少SNP位点落在编码区,这些位点有多大比例是非同义突变。

数据准备

做SNP位点注释需要三样原件,分别是:参考基因组序列文件,参考基因组序GFF注释文件和之前Call好的SNP数据VCF文件。

使用SnpEff注释VCF文件

推荐使用snpEFF来做突变注释[1]。

软件安装:

wget https://snpeff.blob.core.windows.net/versions/snpEff_latest_core.zip
unzip snpEff_latest_core.zip

构建参考数据库

首先,我们需要编辑snpEff文件夹下的snpEff.config, 在# Databases & Genomes后增加一个新的物种信息。

#Databases & Genomes
物种名.genome : 物种名

这里的物种名是物种注释信息的名称,必须要和输入文件名对应。这里在snpEff/data/路径下建一个以你的物种名命名的子文件夹,用来放构建参考数据库所需要的文件。

mkdir -p snpEff/data/物种名

在data/物种名/文件夹下面存放两个文件

参考基因组:sequences.fa.gz:

注释文件,GFF3格式(也可以是GFF2格式):genes.gff.gz

之后就可以用build子命令进行构建参考数据库。

java -jar snpEff.jar build -gff3 -v 物种名

注释:

进入工作路径,比如在自己的文件夹下的snpEff_results文件夹,执行以下命令,即可获得注释文件。

java -jar snpEff.jar ann 物种名 input.vcf.gz > snpeff.vcf

默认情况下snpEff的注释信息会很多,都存放在snpeff.vcf文件中,其实它还是一个vcf格式文件,只是在原来的输出文件基础上增加了一个tag:ANN

我可以将这个vcf格式文件稍微处理下,保留原来的vcf文件的前5列,再加上ANN列形成一个新文件来查看:

perl -alne 'next if $_ =~ /^#/;$F[7] =~ /(ANN=\S+)/;print "$F[1]\t$F[2]\t$F[3]\t$F[4]\t$F[5]\t$1"' snpeff.vcf >snpeff.anntag.vcf

ANN列里的信息包括很多,大致列举几个,具体的内容大家看看官网官方解释

我们可以用如下几个参数来简化输出

-no-downstream
-no-upstream
-no-utr
-no-intergenic
-no-intron

比如说我们只关注CDS中的注释信息,不考虑上游、下游、UTR、基因间区等信息

java -jar snpEff.jar ann -no-utr -no-downstream -no-upstream -no-intergenic 物种名 input.vcf.gz > snpeff.vcf

最终除了输出的vcf文件外,我们还会有额外两个文件,记录总结性信息:

参考:

[1] A program for annotating and predicting the effects of single nucleotide polymorphisms, SnpEff: SNPs in the genome of Drosophila melanogaster strain w1118; iso-2; iso-3

SnpEff_manual

使用snpEff对VCF进行注释

SnpEFF注释vcf-笔记

snpEff : 突变位点注释的又一利器

上一篇下一篇

猜你喜欢

热点阅读