zoukankan      html  css  js  c++  java
  • 解决invalid record found in VCF4 file (at least 8 tab-delimited fields expected)问题,批量修改空格改为制表格格式

    出现这种问题说明一般存在两个问题:

    第一,vcf文件不足8个分割制表符,比如像如下文件:

    为了解决这个问题,说明在做snp filter时候,需要提取至少8个制表符的字符串,比如,像如下文件所示:

    第二个问题:字符串之间是非制表符分隔的,比如下图:

    显然,上图字符串之间的间隔只有一个空格,因此需要将空格改为制表符格式,可以用以下脚本修改:

    perl -alne '{print "$F[0]	$F[1]	$F[2]	$F[3]	$F[4]	$F[5]	$F[6]	$F[7]	$F[8]	$F[9]"}' inputfile >outputfile
    

      对于多个文件,可用以下循环命令:

    for i in *.inputfile
    do
    echo $i
    perl -alne '{print "$F[0]	$F[1]	$F[2]	$F[3]	$F[4]	$F[5]	$F[6]	$F[7]	$F[8]	$F[9]"}' $i >${i%%.*}.outputfile
    done
    

      最后,转化的效果如下:

    从上图可以 看出,字符串之间的间隔拉大了,即已经变为制表格格式。

  • 相关阅读:
    maven笔记
    enum笔记
    mysql笔记
    git笔记
    spark笔记
    使用GitHub进行团队合作
    深度学习网站
    顶级论文索引网站
    研究生-数学建模集
    算法练习网站
  • 原文地址:https://www.cnblogs.com/chenwenyan/p/7211832.html
Copyright © 2011-2022 走看看