WES性别预测的奇技淫巧

进行WES时,需要将样本性别作为一个质控参数,因此要对数据进行性别预测。注意,任何方法的准确率都不能达到100%。

通过CNV方式预测

cnvkit中包含了性别预测的方式,具体是与基线进行比较获得cnr文件后,对cnr文件使用

cnvkit.py sex sample.cnr -o output.txt

可在进行CNV检测时同步进行。

通过SRY基因

这个应该是最简单的,直接统计比对到SRY基因区域的reads数,根据reads数的数目来预测性别。前期先对若干数量的已知性别样本进行统计,就大概可以获得一个判定的阈值。

Chrom Start End Name
Y 2654896 2655723 SRY(GRCh37)
Y 2786855 2787682 SRY(GRCh38)

使用samtools统计即可

samtools view sample.bam Y:2786855-2787682 | wc -l

我的数据中(200X WES),男性SRY reads一般都在100以上,女性一般都是0。

通过VCF

统计一下VCF里面X染色体上的总突变数目X(sum),再统计一下其中纯合突变的数目X(hom),获得X(hom)与X(sum)的比例;对若干已知性别的样本进行统计,就大概可以获得一个判断阈值了。

这个逻辑是正常的男性,X上的突变理论上都是纯合(X、Y存在同源区,因此纯合的比例也不会达到100%)。

我的数据测试中女性在40%左右,男性在80%左右。

这个方式存在的问题是当性染色体存在拷贝数变异时,会造成比例失衡。