本篇代码参考了简述作者:LiuYueRR 的snpeff使用文档,下面对注释过程进行复盘
1.1安装snpEff方法
conda install snpeff
可以很快捷自动安装,不过,我们在使用snpeff时,需要用到安装包的路径,我是使用miniconda进行安装的,如果大家也是使用miniconda,那么路径应该为/home/username(每个人不一样)/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0。
2.1构建SnpEff数据库
SnpEff软件的运行,首先需要基因组fasta序列信息和GTF注释信息,来构建数据库。
配置文件步骤如下:
1.在~/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0目录中,创建一个文件夹:data
2.在~miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/data目录下,创建两个文件夹,第一个存放基因组注释文件(gtf),第二个存放基因组序列文件(fa),如果下载的是fna格式,请修改一下后缀。
GCF_002163495.1_Omyk_1.0_genomic/
genomes/
这两个文件夹中,分别放置gtf文件和基因组序列fa文件
genes.gtf (gtf文件名严格改为genes.gtf,不然无法识别注释文件)
GCF_002163495.1_Omyk_1.0_genomic.fa
3.编辑~/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/snpEff.config文件
在文件的最后一行添加信息:
GCF_002163495.1_Omyk_1.0_genomic.genome: oncorhynchus mykiss (前缀要和代码对应)
构建数据库步骤如下:
java -jar /miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/snpEff.jar build -c ~/snpEff/snpEff.config -gtf22 -v GCF_002163495.1_Omyk_1.0_genomic
#参数说明
java -jar: Java环境下运行程序
-c snpEff.config配置文件路径
-gff3 设置输入基因组注释信息是gff3格式,如果是gtf文件请改为-gtf22
-v 设置在程序运行过程中输出的日志信息
最后的-v参数 设置输入的基因组版本信息,和snpEff.config配置文件中添加的信息一致
注意:使用conda安装后,其实可以直接调用snpEff命令进行运行,但我使用时会出现
java报错的情况:java.lang.OutOfMemoryError: Java heap space,所以最好严格以java程序运行
如果运行成功,会看到如下运行情况
运行比较长的一段时间
2.2使用SnpEff进行注释
java -jar ~/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/snpEff.jar build -c ~/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/snpEff.config -gff3 -v GCF_002163495.1_Omyk_1.0_genomic
#搭建基因组数据库
awk '{$1="";print $0}' OFS="\t" AxiomGT1.calls.vcf > col_2.vcf
#如果你的染色体与数据库不一致,那么可以手动生成染色体序列文件col_chr2.vcf
paste -d '' col_chr2.vcf col_2.vcf >AxiomGT1.vcf
#合并序列
sed -n l AxiomGT1.vcf
#检查vcf文件格式是否一致,要求分隔符为“\t”
java -jar ~/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/snpEff.jar eff -c ~/miniconda3/pkgs/snpeff-5.0-0/share/snpeff-5.0-0/snpEff.config GCF_002163495.1_Omyk_1.0_genomic AxiomGT1.vcf > AxiomGT1.snp.eff.vcf -csvStats AxiomGT1_positive.csv -stats AxiomGT1_positive.html
#对snp进行注释
最终会产生四个文件 AxiomGT1.snp.eff.vcf AxiomGT1_positive.html AxiomGT1_positive.csv AxiomGT1_positive.genes.txt