1安裝方法
首先安裝好java環(huán)境,通過官網(wǎng)下載最新版本的軟件壓縮包,然后解壓即可,最好安裝在自己熟悉的目錄下。
java檢測
java -version
配置數(shù)據(jù)庫
有一些物種已經(jīng)有官方的注釋數(shù)據(jù)庫,可以直接進行下載, 比如人類基因組,用如下代碼下載:
java -jar snpEff.jar download GRCh38.76
如果需要查找哪些物種有現(xiàn)成的數(shù)據(jù)庫,可以使用如下命令:
java -jar snpEff.jar databases
如果官方?jīng)]有給出數(shù)據(jù)庫,就需要自行建立數(shù)據(jù)庫,
查找是否有我要用的數(shù)據(jù)庫,如我要找小麥(Triticum)的
java -jar snpEff.jar? databases |grep "Triticum"
找到的庫叫Triticum_aestivum
(查看全部數(shù)據(jù)庫:? ? java -jar snpEff.jar databases |less -S)
2.構(gòu)建自有物種數(shù)據(jù)庫
因為我是要從頭構(gòu)建注釋基因集,所以它自帶的數(shù)據(jù)庫對我就沒有什么用
下載水稻基因組及注釋?http://rice.uga.edu/pub/data/Eukaryotic_Projects/o_sativa/annotation_dbs/pseudomolecules/version_7.0/all.dir/
而第一步便是要找到snpEff.config這個文件進行添加
配置文件修改
需要修改的配置文件在snpEff目錄下, 文件名為snpEff.config,打開這個文件,在最后一行添加自定義數(shù)據(jù)庫信息(這里的wheat可以自定義,但是要保持一致)
echo "rice.genome:rice" >> snpEff.config
數(shù)據(jù)庫路徑設(shè)置
按照如下設(shè)置進入snpEff的安裝目錄并創(chuàng)建文件夾:
cd snpEff? #進入 snpEff 目錄下
mkdir data? #新建 data 目錄
cd data? #進入 data 目錄下,必須在該目錄
mkdir genomes? #新建 genomes 目錄,用于建立 rice 目錄中的 bin
mkdir rice ?#新建 rice目錄,對應(yīng)物種名或后續(xù)軟件調(diào)用的參數(shù)名
將參考基因組.fa文件放在genomes文件夾中,并改名為rice.fa,并將gff注釋文件放在rice文件夾中改名genes.gff3,
rice文件夾中包括了genes.gff3 cds.fa protein.fa ##無論原名是啥都改為這個
運行腳本形成bin文件
準(zhǔn)備好文件后,回到軟件目錄,并執(zhí)行以下命令,自動生成參考文件。檢查一下存放參考基因組注釋文件的目錄下是否出現(xiàn)一些以.bin結(jié)尾的文件(數(shù)量與參考基因組染色體數(shù)有關(guān)),有就代表構(gòu)建成功。
java -jar snpEff.jar build -gff3 -v rice
# -c , -config? : Specify config file
#? -v , -verbose : Verbose mode (詳細模式)
4、利用下載的數(shù)據(jù)庫文件給vcf文件注釋(不需要cd到data文件夾里)
java -jar snpEff.jar -c snpEff.config rice 156_2_35.7_filted.vcf.recode.vcf > 156.new.new.vcf
java -Xmx8g -jar snpEff.jar rice 需要被注釋的vcf文件路徑/snp_test.vcf > 存放結(jié)果文件的路徑/snp_test_rs.vcf
java-Xmx4g-jar../snpEff.jar ann Amur_ide-o vcf-v./alk_fw_pass_merged_filter.vcf-csvStats1.csv-stats1.html>selected.ann.vcf##-Xmx:堆內(nèi)存的最?值,默認值是物理內(nèi)存的1/4(且?于1G),如默認情況下當(dāng)堆中可?內(nèi)存?于70%時,堆內(nèi)存會開始減少,?直減?到-Xms的??#-csvStats<file>:Create CSV summary file.#-s,-stats,-htmlStats:Create HTML summary file.Defaultis'snpEff_summary.html'#-o<format>:Ouput format[vcf,gatk,bed,bedAnn].Default:VCF.#-formatEff:Use'EFF'field compatiblewitholder versions(instead of'ANN').(使用與舊版本兼容的'EFF'字段(而不是'ANN')。)
5、注釋結(jié)果:文件后半部分如下圖,會告知每個snp的位置,是在哪個基因的上游/下游,是否是同義突變等等
