对比
SAM vs BAM
SAM和BAM表示相同的比对信息。SAM是制表符分隔文本;BAM是按BGZF块压缩的二进制表示。
应该选择哪种格式?
检查内容和调试可选SAM;使用兼容分析工具保存数据或按区域查询可选BAM。
适用于 SAM
以文本交换测序读段及其相对参考序列的比对信息 · 在分析工具间检查头部和记录
- 查看参考序列、FLAG、CIGAR、MAPQ、序列、质量和标签
- 以可读方式调试或检查小型数据集
适用于 BAM
以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据
- 压缩保存与SAM兼容的头部、记录和标签
- 使用BGZF及BAI/CSI索引进行区域读取
基本信息
| 项目 | SAM | BAM |
|---|---|---|
| 扩展名 | .sam | .bam |
| MIME 类型 | text/plain | application/octet-stream |
| 常见用途 | 以文本交换测序读段及其相对参考序列的比对信息 · 在分析工具间检查头部和记录 | 以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据 |
| 打开方式 | 用支持SAM的软件或文本编辑器打开。检查`@HD`、`@SQ`、`@RG`、`@PG`等头部、11个必需列、FLAG位、参考坐标、CIGAR、MAPQ、SEQ/QUAL和可选标签。避免使用会重排行或修改制表符的表格软件。 | 使用支持SAM/BAM的软件。检查头部中的参考名称、长度和标识、排序顺序、读段数量、FLAG/CIGAR、质量及标签。区域查询时,使用针对该BAM文件和排序状态生成的BAI/CSI索引。 |
| 导出或转换 | 转为BAM时验证头部、FLAG、CIGAR、质量、标签和排序。坐标排序后的BAM可按工具要求建立索引。FASTQ生成SAM需要参考序列和比对流程,并非简单格式转换。 | 将BAM转为SAM可读性更好但文件可能明显增大。SAM转回BAM时核对字段、标签和顺序。CRAM转换可能依赖参考序列和质量保留设置,应保存所需参考数据。 |
按用途选择
查看参考序列、FLAG、CIGAR、MAPQ、序列、质量和标签
以文本交换测序读段及其相对参考序列的比对信息 · 在分析工具间检查头部和记录
SAM以可读方式调试或检查小型数据集
以文本交换测序读段及其相对参考序列的比对信息 · 在分析工具间检查头部和记录
SAM压缩保存与SAM兼容的头部、记录和标签
以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据
BAM使用BGZF及BAI/CSI索引进行区域读取
以二进制形式保存和交换大规模读段比对数据 · 通过索引按区域查询坐标排序的数据
BAM关键点 1
SAM可用文本工具检查。
进一步了解差异关键点 2
BAM需要兼容的解码工具。
进一步了解差异进一步了解差异
转换本身不会自动完成排序和索引。请按接收流程要求进行坐标排序,并创建BAI/CSI索引。
- FLAG、CIGAR、MAPQ和可选标签都有规定含义。把SAM当普通表格编辑,可能破坏记录和参考序列字典的一致性。
- BAM的BGZF不能当普通gzip处理。区域查询需要适当索引和按坐标排序的数据。
常见问题
BAM会提高比对准确度吗?
不会。改变存储表示不等于重新比对。请核对记录数、参考序列字典、标签和质量值,并检查转换时的过滤条件。