目錄
知名的拷貝數變異分析工具幾乎都是為人類變異檢測開發,對於動植物重測序分析有些尷尬。不過好在植物群體研究不必那么精細,用同樣的工具也可做分析。
地址:https://github.com/abyzovlab/CNVnator
1.安裝
建議直接用conda。
conda create -n cnv cnvnator
conda activate cnv
查看幫助:
$ cnvnator
Not enough parameters.
CNVnator v0.4.1
Usage:
cnvnator -root out.root [-genome name] [-chrom 1 2 ...] -tree file1.bam ... [-lite]
cnvnator -root out.root [-genome name] [-chrom 1 2 ...] -merge file1.root ...
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -vcf [file.vcf.gz | file.vcf] [-rmchr] [-addchr]
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -idvar [file.vcf.gz | file.vcf] [-rmchr] [-addchr]
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -mask strict.mask.file.fa.gz [-rmchr] [-addchr]
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] [-d dir | -fasta file.fa.gz] -his bin_size
cnvnator -root file.root [-genome name] [-chrom 1 2 ...] -baf bin_size [-hap] [-useid] [-nomask]
cnvnator -root file.root [-chrom 1 2 ...] -stat bin_size
cnvnator -root file.root -eval bin_size
cnvnator -root file.root [-chrom 1 2 ...] -partition bin_size [-ngc]
cnvnator -root file.root [-chrom 1 2 ...] -call bin_size [-ngc]
cnvnator -root file.root -genotype bin_size [-ngc]
cnvnator -root file.root -view bin_size [-ngc]
cnvnator -pe file1.bam ... -qual val(20) -over val(0.8) [-f file]
cnvnator-root file.root [-chrom 1 2 ...] -cptrees newfile.root
cnvnator-root file.root -ls
Valid genomes (-genome option) are: NCBI36, hg18, GRCh37, hg19, mm9, hg38, GRCh38
2.測試
首先准備好數據,再利用一個小數據集,比如這里用一條染色體來測試一下流程。
准備基因組數據。需要將基因組按染色體/scaffold拆分成單條序列,放在一個目錄下。
mkdir genome;cd genome
faSplit byname genome.fa genome
# faSplit可用conda安裝,或者自己寫腳本拆分
測試腳本,先用一條染色體試試:
#從bam文件中提取比對上的reads信息
cnvnator -root file.root -tree sample-1.rmdup.bam -chrom 1
#生成read depth分布圖
cnvnator -root file.root -his 1000 -d genome/ -chrom 1
#計算統計結果
cnvnator -root file.root -stat 1000 -chrom 1
#RD信號分割
cnvnator -root file.root -partition 1000 -chrom 1
#拷貝數變異檢測
cnvnator -root file.root -call 1000 -chrom 1 > cnv.call.txt
#轉化為vcf,如果是conda安裝,沒有這個腳本,需要從GitHub上下載
/biosoft/CNVnator/cnvnator2VCF.pl cnv.call.txt genome >test.vcf
拷貝數cnv.all.txt結果:、
表頭CNV_type coordinates CNV_size normalized_RD e-val1 e-val2 e-val3 e-val4 q0
- CNV_type有deletion和duplication兩種類型;
- CNV_size 位於染色體區域;
- normalized_RD 矯正后的read depth;
- e-val1 t檢驗后的evalue值,通常該值越小,代表分析的結果越准確;
- q0 比對的質量值為0的reads占比,通常該值越大,代表分析的結果越不准確。
vcf結果:
沒有自動加上樣品名,需要自己修改。加上--prefix參數也只是改變CNV ID。
更多結果解讀,請查看官方文檔或網上其他教程。
3.動植物群體檢測CNV
正式分析。
ls -l /project/gvcf/*.rmdup.bam |awk -F' ' '{print $8}' >sample.info
cat sample.info |while read id;do
sample=`basename $id |sed 's/.rmdup.bam//'`
echo $sample
cnvnator -root file.root -tree $id
cnvnator -root file.root -his 1000 -d genome/
cnvnator -root file.root -stat 1000
cnvnator -root file.root -partition 1000
cnvnator -root file.root -call 1000 > cnv.call.txt
/biosoft/CNVnator/cnvnator2VCF.pl cnv.call.txt genome >${sample}.cnv.vcf
sed -i "22s/cnv/${sample}/" ${sample}.cnv.vcf
bgzip ${sample}.cnv.vcf
tabix -p vcf ${sample}.cnv.vcf.gz
done
得到各個樣本的拷貝數vcf文件,將它們合並成一個。
vcf-merge sample-1.cnv.vcf.gz sample-2.cnv.vcf.gz ...>merge.vcf
或對不同類型群體進行合並。
https://blog.csdn.net/yangl7/article/details/114656482
https://www.jianshu.com/p/98542359df20
https://blog.csdn.net/weixin_43569478/article/details/108079613