跳到主要内容
访问密钥 NCBI主页 MyNCBI主页 主要内容 主导航
生物信息学。2009年8月15日;25(16): 2078–2079.
2009年6月8日在线发布。 数字对象标识:10.1093/生物信息学/btp352
预防性维修识别码:PMC2723002型
PMID:19505943

序列对齐/映射格式和SAMtools

李恒1, 鲍勃·汉德萨克2, 亚历克·怀索克2 蒂姆·芬内尔2 觉阮 尼尔斯·霍默4 加博尔·马思5 Goncalo Abecasis公司6 德宾1,*和1000基因组项目数据处理子组7

摘要

总结:序列比对/映射(SAM)格式是一种通用比对格式,用于存储与参考序列的读取比对,支持不同测序平台产生的短读和长读(高达128 Mbp)。它风格灵活,尺寸紧凑,随机存取效率高,是1000基因组计划中的比对发布格式。SAMtools以SAM格式实现各种用于后处理对齐的实用程序,例如索引、变量调用程序和对齐查看器,从而提供处理读取对齐的通用工具。

可利用性: 网址:http://samtools.sourceforge.net

联系人: ku.ca.regnas@医生

1简介

随着Illumina/Solexa、AB/SOLiD和Roche/454(Mardis,2008)各种新的校准工具(Langmead等。2009; 等。2008)已被设计用于实现针对大型参考序列(包括人类基因组)的高效读取映射。然而,这些工具以不同的格式生成对齐,使下游处理复杂化。支持所有序列类型和比对器的通用比对格式在比对和下游分析之间创建了一个定义明确的接口,包括变体检测、基因分型和组装。

序列比对/映射(SAM)格式旨在实现这一目标。它支持单端和双端读取以及组合不同类型的读取,包括从AB/SOLiD读取颜色空间。其设计可缩放到10个对齐集11或多个碱基对,这是一个人深重测序的典型情况。

在本文中,我们将概述SAM格式,并简要介绍配套的SAMtools软件包。SAMtools网站上提供了详细的格式规范和完整的SAMtool文档。

2方法

2.1 SAM格式

2.1.1 SAM格式概述

SAM格式由一个标题部分和一个对齐部分组成。标题部分中的行以字符“@',而对齐部分中的线则没有。所有行都以TAB分隔。示例如所示图1b。

保存图片、插图等的外部文件。对象名为btp352f1.jpg

扩展香烟和堆积输出的示例。()一对读数和三个单端读数的对齐。(b条)相应的SAM文件。@SQ公司'标题部分的行给出了引用序列的顺序。尤其是,r001号是读取对的名称。根据旗帜163(=1+2+32+128),映射到位置7的读取是对(128)中的第二个读取,并被视为正确配对(1+2);它的配对被映射到反向链(32)上的37。阅读r002号有三个软卷边(未对齐)底座。SAM中显示的坐标是第一个对齐底座的位置。此对齐的CIGAR字符串包含P(P)(填充)正确对齐插入序列的操作。如果对齐器不支持多序列对齐,则可能缺少填充操作。阅读的最后六个基础第003期映射到位置9并且前五个映射到反向链上的位置29。硬剪裁操作H(H)指示序列字段中不存在剪裁的序列。这个NM公司标签给出了不匹配的数量。阅读第004期跨插入子对齐,由N个操作。(c(c))SAMtools简化了堆积输出。每行由参考名称、排序坐标、参考基数、覆盖位置的读取次数和读取基数组成。在第五个字段中,点或逗号表示与参考相同的基础;点或大写字母表示前向链上映射的read的基数,而反向链上的逗号或小写字母。

在SAM中,每条对齐线有11个必填字段和可变数量的可选字段。必填字段在中进行了简要描述表1。它们必须存在,但其值可以是“'或零(取决于字段),如果相应信息不可用。可选字段以键值对的形式显示,格式为标签:类型:值。它们存储来自平台或对准器的额外信息。例如RG公司'标记保留每次读取的“读取组”信息。结合“@RG公司'标题行,此标记允许每个读取都使用有关其来源、排序中心和库的元数据进行标记。SAM格式规范详细描述了每个字段和预定义的标签第条。

表1。

SAM格式中的必填字段

不。姓名描述
1QNAME(姓名)读取或读取对的查询名称
2旗帜位FLAG(配对、串、配对串等)
RNAME公司参考序列名称
4位置基于1的剪裁对齐最左侧位置
5MAPQ公司MAPping质量(Phred-scaled)
6香烟扩展的香烟串(操作:MIDNSHP公司)
7MRNM公司Mate Reference NaMe(如果与RNAME公司)
8复合材料基于1的最左侧配合位置
9ISIZE公司推断插入尺寸
10序列查询与参考相同链上的序列
11质量查询质量(ASCII-33=Phred基本质量)

2.1.2加长型卷烟

成对对齐的标准雪茄描述定义了三种操作:M(M)'用于匹配/不匹配,''用于与引用比较的插入,以及'D类'进行删除。SAM中提议的扩展雪茄烟又增加了四项业务:N个'对于基于引用的跳过的基,'S公司'用于软剪辑,'H(H)'用于硬剪切和'P(P)'用于填充。这些支持拼接、剪裁、多部分和填充对齐。图1显示了不同类型对齐的香烟字符串示例。

2.1.3二进制对齐/映射格式

为了提高性能,我们设计了一种伴生格式二进制对齐/映射(BAM),它是SAM的二进制表示,与SAM保持完全相同的信息。BAM由BGZF库压缩,BGZF是我们开发的一个通用库,用于在zlib兼容的压缩文件中实现快速随机访问。112 Gbp Illumina GA数据的示例对齐需要116 GB的磁盘空间(每个输入基1.0字节),包括序列、基质量和MAQ生成的所有元信息。大部分空间用于存储基本质量。

2.1.4排序和索引

SAM/BAM文件可以取消排序,但按坐标排序用于简化数据处理并避免将额外对齐加载到内存中。可以索引位置排序的BAM文件。我们结合了UCSC装箱方案(肯特等。2002)以及简单的线性索引,以实现对重叠于特定染色体区域的比对的快速随机检索。在大多数情况下,只需要一个查找调用即可检索区域中的路线。

2.2 SAMtools软件包

SAMtools是一个库和软件包,用于解析和操作SAM/BAM格式的对齐。它能够从其他对齐格式转换、排序和合并对齐、删除PCR重复项、生成堆积格式的位置信息(图1c) ,调用SNP和短indel变体,并在基于文本的查看器中显示对齐。对于112 Gbp Illumina GA数据的示例对齐,SAMtools从MAQ格式转换大约需要10个小时,使用<30 MB内存进行索引需要40分钟。转换速度较慢,主要是因为使用zlib进行压缩比解压缩慢。外部排序写入临时BAM文件,速度通常是转换速度的两倍。

SAMtools有两个单独的实现,一个用C实现,另一个用Java实现,功能略有不同。

3个结论

我们设计并实现了一种通用的比对格式SAM,它易于使用,并且足够灵活,可以保存来自各种测序平台和读取比对器的大多数信息。等效的二进制表示BAM大小紧凑,支持快速检索指定区域中的对齐。使用位置排序和索引,应用程序可以对特定基因组区域执行基于流的处理,而无需将整个文件加载到内存中。SAM/BAM格式和SAMtools将比对步骤与下游分析分离,实现了基因组测序数据分析的通用和模块化方法。

致谢

我们感谢James Bonfield对索引的评论,感谢SAMtools用户在软件成熟时对其进行测试。

基金:威康信托/077192/Z/05/Z;美国国立卫生研究院Hapmap/1000基因组项目拨款(授予B.H.的U54HG002750)。

利益冲突:未声明。

参考文献


文章来自生物信息学由以下人员提供牛津大学出版社