十二 22

根据chrY独有区域的覆盖度及测序深度来判断性别

这个也是基于bam文件来的,判断chrY独有区域的覆盖度及测序深度
首先下载chrY独有区域的记录文件,https://www.familytreedna.com/documents/bigy_targets.txt
然后用samtools depth来统计测序深度,samtools  depth $i |grep 'chr[XY]'
depth统计结果文件如下:
mzeng@ubuntu:/home/jmzeng/gender_determination$ head Sample3.depth
chrX    60085    1
chrX    60086    1
chrX    60087    1
chrX    60088    1
chrX    60089    1
chrX    60090    1
chrX    60091    1
chrX    60092    1
chrX    60093    1
chrX    60094    1
然后我随便写了一个脚本来对测序深度文件进行再统计,统计覆盖度及测序深度

[perl]
open FH,"bigy_targets.txt";
while(<FH>){
 chomp;
 @F=split;
 $all+=$F[2]-$F[1]+1;
 foreach ($F[1]..$F[2]){
  $h{$_}=1;
 }
}
close FH;
open FH,$ARGV[0];
while(<FH>){
 chomp;
 @F=split;
 next unless $F[0] eq 'chrY';
 if (exists $h{$F[1]}){
  $pos++;
  $depth+=$F[2];
 }
}
close FH;
$average=$depth/$pos;
$coverage=$pos/$all;
print "$pos\t$average\t$coverage\n" ;

[/perl]

 

 
这样对那三个样本结果如下:
clipboard
可以看到只有sample4,是覆盖率极低的,而且记录到的pos位点也特别少,所以她是女性!
这里测序深度没有意义。
十二 22

根据X,Y染色体比对上的reads数来判断性别

针对高通量测序数据,包括WGS,WES
我这里主要讲根据bam文件里面的chrX和chrY的reas比例来判断性别,大家可以自己处理数据得到bam文件!
主要是读取bam文件,选择chrX上面的记录,统计genotype即可:
也可以统计测序深度,samtools  depth $i |grep 'chr[XY]'
如果chrX和chrY的reads比例超过一定值,比如50倍,就判定为女性!
脚本很简单,就统计bam文件的第三列就可以啦,第三列就是染色体信息
 samtools  view $i |  perl -alne '{$h{$F[2]}++}END{print "$_\t$h{$_}" foreach sort keys %h}' >$out.chromosome.stat
对于Sample3,
chrX 1233061
chrY 140506
 
对于Sample4,很明显,这个是女性!
chrX 2734815
chrY 51860
 
对于Sample5
chrX 1329302
chrY 156663
十二 22

根据X染色体的snp的纯和率来判断性别

针对高通量测序数据,包括WGS,WES,甚至snp6芯片也行。
我这里主要讲根据vcf文件里面的chrX的纯合率来判断性别,大家可以自己处理数据得到vcf文件!
主要是读取vcf文件,选择chrX上面的记录,统计genotype即可:
clipboard
我这里拿之前的自闭症项目数据来举例子:
根据数据提供者的信息,3-4-5分别就是孩子、父亲、母亲,统计chrX的snp的的纯合和杂合的比例,代码很简单
vcf文件一般第一列是染色体,第6列是质量,第10列是基因型已经测序深度相关信息

cat Sample5.gatk.UG.vcf |perl -alne '{next unless $F[0] eq "chrX";next unless $F[5]>30;$h{(split/:/,$F[9])[0]}++}END{print "$_\t$h{$_}" foreach keys %h}' 

如果纯合的snp是杂合的倍数超过一定阈值,比如4倍,就可以判断是男性。

对于Sample3来说,很明显,是男孩,因为X染色体都是纯合突变

0/1 391
1/1 2463
2/2 1
1/2 32
0/2 1
对于Sample4来说,很明显,应该是母亲,证明之前别人给我的信息有误
1/1 3559
1/2 27
0/1 1835
0/2 5
那么Sample5很明显就是父亲咯
1/1 2626
0/1 356
1/2 22