• 生物信息学——文件格式 pileup详解


    生物信息学

    生物信息学——文件格式 pileup详解



    概述

    每一种生物软件都有固定的文件格式要求。了解文件格式才能快速分辨文件的功能。从某种意义上来说,生物信息分析的过程就是进行各种文件格式的转换过程。

    一、pileup文件格式

    • 概述:pileup格式是一种常见的文本文件格式,用于描述基因组测序数据中每个碱基的信息。它通常用于描述每个位置的碱基序列、碱基质量、覆盖度等信息。
      • Pileup 文件一般是由samtools mpileup命令从sorted bam 文件(经过去重,排序后的bam文件)生成。
    samtools mpileup -f /ref.fa   sample.sorted.bam -o sample.pileup
    # -f 后面是参考序列或者基因组
    
    • 1
    • 2
    • 后缀pileup
    • 格式

    pileup格式的文件通常由多行组成,每行对应于基因组上的一个位置。每行包含以下列,每列之间由tab分开:

    1. 染色体名称(Chromosome):表示该位置所在的染色体。

    2. 位置(Position):表示该碱基在染色体上的位置。

    3. 参考碱基(Reference base):表示该位置上的参考碱基。

    4. 覆盖度(Coverage):表示该位置上测序的碱基总数。

    5. 碱基序列(Read bases):表示该位置上每个碱基的序列。

    6. 碱基质量(Base qualities):表示该位置上每个碱基的质量值。

    7. 位点信息(Alignment information):表示该位置上每个碱基的对齐信息,如是否为反向互补链、是否为剪接位点等。

    • 示例
    seq1 272 T 24  ,.$.....,,.,.,...,,,.,..^+. <<<+;<<<<<<<<<<<=<;<;7<&
    seq1 273 T 23  ,.....,,.,.,...,,,.,..A <<<;<<<<<<<<<3<=<<<;<<+
    seq1 274 T 23  ,.$....,,.,.,...,,,.,...    7<7;<;<<<<<<<<<=<;<;<<6
    seq1 275 A 23  ,$....,,.,.,...,,,.,...^l.  <+;9*<<<<<<<<<=<<:;<<<<
    seq1 276 G 22  ...T,,.,.,...,,,.,....  33;+<<7=7<<7<&<<1;<<6<
    seq1 277 T 22  ....,,.,.,.C.,,,.,..G.  +7<;<<<<<<<&<=<<:;<<&<
    seq1 278 G 23  ....,,.,.,...,,,.,....^k.   %38*<<;<7<<7<=<<<;<<<<<
    seq1 279 C 23  A..T,,.,.,...,,,.,..... ;75&<<<<<<<<<=<<<9<<:<<
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 适用情况:pileup格式的文件常用于对测序数据进行变异检测、基因组比对和突变分析等任务。它提供了详细的碱基信息,可以用于研究基因组的变异和突变情况,以及分析基因组的结构和功能。
      • 往往下一步会将pileup格式文件,转化为vcf/bcf格式文件。

    二、碱基序列(Read bases)符号详解

    • . 表示该碱基匹配到正链;
    • , 表示该碱基匹配到反链;
    • ACGTN 表示与参考基因组序列正链不匹配的比对情况(也即错配或变异);
    • acgtn 表示与参考基因组序列反链不匹配的比对情况;
    • + or +[0-9]+[ACGTNacgtn] 表示片段的插入,在此参考位置和下一个参考位置之间。数字是插入的长度,后跟插入的序列
      • seq2 156 A 11 .$......+2AG.+2AG.+2AGGG <975;:<<<<<
      • 表示在这个位点上有3个2bp(AG)的插入,最后两个GG表示错配或变异;
    • - or -[0-9]+[ACGTNacgtn] 代表片段的缺失,在此参考位置和下一个参考位置之间。数字是删除的长度,后跟删除的序列
      • seq3 200 A 20 ,,,,,..,.-4CACC.-4CACC....,.,,.^~. ==<<<<<<<<<<<::<;2<<
      • 表示两个4bp(CACC)的删除
    • ^ 表示是每条reads的开头,“^”后面跟的符号" ’ "的ASCII十进制值减去33就是这条reads的mapping quality
    • $ 表示是每条reads的结尾
    • ^] 表示该位置存在一个插入,在该位置上,参考序列中有一个碱基被插入到了测序读段中。^]后面的字符表示插入的具体碱基序列。(所以 ^]. 代表插入一个原碱基?还是指测序序列与参考序列相同? )
  • 相关阅读:
    用“价值”的视角来看安全:《构建新型网络形态下的网络空间安全体系》
    装饰者模式
    vue学习笔记22-组件传递多种数据类型&props效验
    字节跳动笔试题——算法岗
    【hacker送书第2期】计算机考研精炼1000题
    【C++初阶】类和对象(二)
    自用bat脚本,命令
    记一次有意思的 SQL 实现 → 分组后取每组的第一条记录
    Llama改进之——分组查询注意力
    华为appgallery上架
  • 原文地址:https://blog.csdn.net/qq_45794091/article/details/133894765