XCAVATOR 软件
- 检测CNV的方法
当前,检测SV的主要方法有如下4种:
1.1 read count/depth of coverage (RC/DOC)
根据读段在染色体上的分布密度,发现扩增或缺失,其基本原理是扩增区域比周围区域的读段密度高,而缺失区域比周围区域的读段密度低。深度测序数据的读段密度也受到基因组序列中GC含量和重复序列的影响而存在偏性,因此,也需要事先构建数学模型,校正这些因素。
1.2 read pair (RP)
对片断的两端分别进行测序,然后将两端比对到参照基因组上,再根据比对结果与参照基因组片断大小的差异,从而发现DNA片断的缺失、插入和倒位。
1.3 split read (SR)
当读段中包含了插入或缺失的断点时,同一读段可以比对到参照基因组的不同位置,这时可以采用读段分解(split read)法。这种方法可以检测小片断的缺失,理论上可以精确到1个碱基对。但是,由于该法可以检测的片断的长度小于读段的长度,因此限制了Split read法可发现的CNV的大小。
1.4 assembly methods
这是一种将测序片断重新组装,从而发现基因组中的插人缺失的方法。该法在基因组较大的物种中应用时会遇到一些问题,如人类基因组中富含重复序列的区域,采用Assembly方法分析的效果并不好。
- XCAVATOR软件
2.1 安装方法
XCAVATOR可运行在Linux集群中,需要提前部署R、perl、samtools等软件。
下载: http://sourceforge.net/projects/xcavator/
下载后解压,并根据说明文件安装
2.2 分析步骤
XCAVATOR可以使用paired, nocontrol and pooling共3中模式分析;在pooling模式中,所有样本需跟同一个control比较(该control是由其他Cx lable的control样本pool而得);在paired模式中,每个样本与对应的control比较(T1-C1, T2-C2,….),适用于有paired样本的somatic CNV;在nocontrol模式中,不需要control样本。XCAVATOR分析步骤由3个独立的perl脚本完成:
2.2.1 ReferenceWindowInitialize.pl
该脚本包含为XCAVATOR分析计算滑窗信息("windows" informations)的模块,模块计算用户定义的”window”区间内的GC-content值和mappability值。
SourceTarget.txt:the path to a source file(该文件2列,包含计算mappability 的文件bigWig file (.bw)绝对路径、计算GC-content的fasta格式的reference绝对路径)
MyWindowLabelName:the path to a bed file(存放中间文件的目录路径)
myWindow:a "label" (连续非重叠windows的区间大小,用于计算read counts,必须是整数,如100,200,500,1000),关于窗口大小选择的依据(以NGS数据为例):如下图中,纵坐标TPR指预测正确的几率,横坐标是窗口大小,f图和g图分别是对deletions和duplications的预测,h图是将2 copies区域预测为deletions或duplications的比例,不同颜色指不同测序深度:
hg19:the assembly name (allowed options are: hg19 and hg38)
2.2.2 XCAVATORDataPrepare.pl
该脚本对众多 .bam 文件计算RC/DOC、Mappability值,并进行数据标准化计算。
FilePrepare.txt:bam文件的路径、中间文件输出路径、样本名称共3列信息
--processors:线程数
--mode:RC for short reads and DOC for long reads, PacBio and Nanopore
--assembly:hg19 and hg38
这一步采用2步标准化处理,下图是初步对RC/Mappability值标准化处理前后对比(以NGS数据为例),d和e图是标准化处理之后的,分布更加均匀:
为了进一步降低偏差和假阳,又对RC/Mappability标准化值进行基于2-copies的均值标准化处理,取log2值。
2.2.3 XCAVATORDataAnalysis.pl
采用2步标准化降低RC统计的误差和假阳,并结合HSLM和FastCall算法算法,能够有效检测出长达10kb(low coverage WGS)、1kb(high coverage WGS)的CNV。此外,XCAVATOR不仅可以检测出deletions, normal和duplications,还可以分辨出one-copy/two-copy deletions 、one-copy/multiple-copies duplications。
根据homogeneous SLMalgorithm(HSLM,基于高斯混合模型)算法模型分割RC/DOC成单个区间,即根据RC/DOC的log2值确定deletion和duplication的界限位置;参数设置范围如下:
根据FastCall算法模型把每个区间分类到5个离散状态中(2-copy deletion, 1-copy deletion, normal, 1-copy duplication and N-copy amplification)。参数设置:Cellularity(0.0 - 1.0,是tumor cells的比例),Threshold d (建议0.2--0.6,中性(2拷贝)状态的截断高斯函数的下界),Threshold u (建议0.1-- 0.4,中性(2拷贝)状态的截断高斯函数的上界)。
FileAnalysis.txt:包含3列信息(第2/3列同FilePrepare.txt;第1列是label,描述处理样本的方式, Labels are Cx (for controls, with x=1,2,3…) and Ty (with y=1,2,3….))
MyLabelName / assembly:与XCAVATORDataPrepare.pl中相同。
2.3 结果解读
2.4.1 Plots/SampleName/.pdf*
文件 Plots/SampleName/*.pdf files 是基因组分段数据信息和显著区域的散点图,如下:
2.4.2 Results/SampleName/HSLMResults_SampleName.txt
SLM把segmentation的ratio值取log2值的标准化处理,以确定CNV的界限位点。
2.4.3 Results/SampleName/FastCallResults_SampleName.txt
FastCall根据SLM的识别结果对发现的CNV分类,结果如下:
Chromosome,Start ,End:分别是染色体、起始位点、终止位点;
Segment CNF:segment 拷贝数 log2-ratio的均值;
CN:拷贝数;
Call:拷贝数状态(分成5种状态:-2是2-copies deletion,-1是1-copy deletions,1是1-copy duplication,2是multiple-copies,0是normal);
ProbCall:call probability;