zoukankan      html  css  js  c++  java
  • 问题记录:SNP 标记 phasing

    GATK4 检测的SNP标记,有些位点会在检测过程中完成 phasing,在后续做基因型填充的时候有坑。

    GATK4 phasing 结果的缺失位点不是 ./. 也不是 .|.  而是直接变成一个单独的点;下图黄线标记出来的部分,上面是原始结果,下面是修改后结果。

    基于此后续做 phasing 才能顺利进行。 

     最后附上处理脚本:

     1 use strict;
     2 open A,"gzip -dc $ARGV[0]|";
     3 open U,"| gzip > $ARGV[1].gz";
     4 while(<A>){
     5     chomp;
     6     if(/^#/){
     7         print U "$_
    ";
     8     }
     9     else{
    10         my @line=split;
    11         for(my $i=9;$i<@line;$i++){
    12             my ($geno,$tail)=(split /:/,$line[$i],2)[0,1];
    13             if($geno eq "."){
    14                 $line[$i]="./.:".$tail;
    15             }
    16         }
    17         my $o1=join "	",@line[0..8];
    18         my $o2=join "	",@line[9..$#line];
    19         print U "$o1	$o2
    ";
    20     }
    21 }
    22 close A;
    23 close U;
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
  • 相关阅读:
    C#去掉数组中重复的字符串 .Distinct()
    文件上传 uploadlabs
    Sipdroid初尝
    腾讯面试小记
    C/C++拾遗(二)
    ZigBee简介
    大端小端
    字符串——算法系列
    重复定义
    C/C++拾遗
  • 原文地址:https://www.cnblogs.com/mmtinfo/p/14761827.html
Copyright © 2011-2022 走看看