Awk 提取VCF文件中管道之间的可变字符串内容

Awk 提取VCF文件中管道之间的可变字符串内容,awk,bioinformatics,genetics,vcf-variant-call-format,Awk,Bioinformatics,Genetics,Vcf Variant Call Format,这个问题看起来可能与遗传学有关,但实际上它是基于编程的 我有以下vcf文件(特定的txt文件,从工具获得,称为VEP),带有标题和此列内容: #CHROM POS ID REF ALT QUAL FILTER INFO FORMAT sample.F chr1 10643146 . G GC 63.2 PASS CSQ=|FAIL|0.00|0.00|0.01|0.00|13|40|-3|13|||MODIFI

这个问题看起来可能与遗传学有关,但实际上它是基于编程的

我有以下vcf文件(特定的txt文件,从工具获得,称为VEP),带有标题和此列内容:

#CHROM  POS     ID      REF     ALT     QUAL    FILTER  INFO    FORMAT  sample.F
chr1    10643146    .   G   GC  63.2    PASS    CSQ=|FAIL|0.00|0.00|0.01|0.00|13|40|-3|13|||MODIFIER|CASZ1|ENSG00000130940|ENST00000377022|protein_coding||19/20|||||,|FAIL|0.00|0.00|0.01|0.00|13|40|-3|13|||MODIFIER|AL139423.1|ENSG00000272078|ENST00000606802|lncRNA||1/1|||||  GT:GQ:DP:AD:VAF:PL  0/1:58:86:40,45:0.523256:63,0,59
chr1    10646034    .   G   C   64.8    PASS    CSQ=|FAIL|0.00|0.00|0.00|0.00|22|3|1|2|||MODIFIER|CASZ1|ENSG00000130940|ENST00000377022|protein_coding||17/20|||||,|FAIL|0.00|0.00|0.00|0.00|22|3|1|2|||MODIFIER|AL139423.1|ENSG00000272078|ENST00000606802|lncRNA||1/1|||||    GT:GQ:DP:AD:VAF:PL  0/1:59:27:13,14:0.518519:64,0,60
我只想在第一列中提取基因名称,在第二列中提取染色体位置,这样我的最终文件可以如下所示:

chr1:10643146             CASZ1
BCFtools插件不合适,所以我决定采用定制方法

  • 我写了一行,打印出所需的列:
  • awk'BEGIN{OFS=“\t”;FS=“\t”};{打印$1、$2、$8}'样本>输出

  • 我弄糊涂了,哪个bash命令适合提取管道之间的字段13(即,line,从CSQ:strings CASZ1开始,在本示例中为mediate之后),因此从所有这条长线中,我只得到管道符号13之间的字符串。和14
  • 我在SO中查看了解决方案,发现:
  • 但问题是第13个字段中的字符串是可变的,所以这不适合我

    我应该使用哪种shell筛选方法


    谢谢大家!

    我尝试了bcftools插件,但得到了:

    $ awk -F'[\t|]' -v OFS='\t' 'NR>1{print $1":"$2, $21}' file
    chr1:10643146   CASZ1
    chr1:10646034   CASZ1
    
    The field "Consequence" is not present in INFO/CSQ: "Consequence annotations from Ensembl VEP. Format: 'Allele
    

    我的vcf中有CSQ字段,但没有命名为results的字段

    是的,但它不起作用,因为作为生物信息学家,我知道CSQ标签可以有多个值,并且可以有比使用管道的CSQ更多的值…如果OPs示例数据不能真正代表他们的真实数据,那么他们需要编辑问题,以提供更具代表性的示例,包括我发布的内容不起作用的情况。>BCFtools插件不起作用适用bcftools有什么问题?
    $ awk -F'[\t|]' -v OFS='\t' 'NR>1{print $1":"$2, $21}' file
    chr1:10643146   CASZ1
    chr1:10646034   CASZ1
    
    The field "Consequence" is not present in INFO/CSQ: "Consequence annotations from Ensembl VEP. Format: 'Allele