SAMtools

AI TOOL PROFILE工具资料

面向高通量测序数据的命令行处理工具集

官网地址 http://samtools.sourceforge.net

访问官网
价格官网未标价
平台—
归类其他 AI 工具
收录2026-10-11
复核2026-10-11
编辑评分 4.2 / 5

SAMtools编辑总结

EDITOR REVIEW编辑评测

SAMtools 是一套用于读取、转换、排序、索引和统计高通量测序比对结果的命令行程序集合,主要工作在 SAM、BAM 与 CRAM 等比对格式之上。它通常与测序比对工具配套使用,负责把比对结果整理成可查询、可浏览、可继续分析的形式。对做基因组、转录组或变异检测的研究人员来说,它更像是分析流程里的通用零件,而不是一个带界面的成品软件;也因此,使用者需要熟悉命令行操作和文件格式概念,才能把它用顺。

SAMtools是什么?

SAMtools 是一组处理测序比对结果的命令行程序,围绕 SAM、BAM、CRAM 这几种描述「测序读段比对到参考基因组哪个位置」的格式展开。它常被放在比对步骤之后、变异检测或表达定量步骤之前,承担格式转换、排序、索引、切片、统计这几类基础工作。

这类工具的定位是流程组件:上游由比对程序产出比对文件,中间用 SAMtools 做整理,下游再交给变异检测、可视化或定量工具。它不负责比对本身,功能通过若干子命令暴露,使用者按需组合。

对个人研究者,它适合在本地工作站上处理单个样本或小批量数据;对实验室和测序分析团队,它更适合作为自动化流程中的固定环节,配合脚本批量运行;对只偶尔接触测序数据的人,用起来会有一道明显的命令行门槛。

SAMtools核心功能

CAPABILITIES工具标签

格式转换

在 SAM、BAM、CRAM 之间互相转换,把文本格式的比对结果压成体积更小的二进制格式,或反过来解出可读文本。

排序与索引

按参考序列位置或读段名称重新排列比对记录,并生成索引文件,让后续工具能够按区域快速读取,而不必从头扫整个文件。

区域切片

从整个比对文件里只取出指定染色体或坐标区间的记录,用于盯住某个基因或某段区域做深入查看,避免反复读取全量数据。

比对统计

汇总比对率、未比对读段、重复与插入片段等信息,输出成统计报告,常用于判断一个样本的测序和比对质量是否正常。

标记重复与过滤

识别可能的重复读段并加标记,配合按质量、按标记位等条件过滤,减少后续变异检测中由重复或低质量读段引入的干扰。

读段编辑

调整比对记录中的标记位、参考序列名称、读段组等信息,用于修正上游工具留下的字段问题,或统一多个文件的命名口径。

变异结果处理

对比对文件做碱基校正、构建索引等操作,为下游变异检测准备输入;相关子命令专门服务于变异识别环节的格式需求。

SAMtools使用建议

HOW TO USE工具标签
入门先把路子走对
  1. 先查子命令直接运行程序名会列出全部子命令,先看清有哪几类操作,再决定用哪一条,比照着别人的脚本硬敲更不容易出错。
  2. 从转换开始拿到比对文件后先做一次格式转换和排序,得到带索引的文件,后面几乎所有步骤都依赖这个已排序、已索引的版本。
  3. 先看统计报告在深入分析前先跑一次比对统计,确认比对率和重复情况正常;样本本身有问题时,后面再多的处理也救不回来。
  4. 分清读段与比对文件原始测序读段和比对结果是两类文件,这个工具处理的是比对结果;用之前先确认手上文件里是否已经带上了参考位置信息。
进阶省时间也省钱
  1. 管道串联子命令把转换、排序、索引等步骤用管道串起来一次性完成,可以少落中间文件,既省磁盘占用也少一次读写。
  2. 切片前先建索引按区域取记录依赖索引文件,没有索引时只能整文件扫描;给常用的比对文件统一建好索引,能明显缩短重复查询的时间。
  3. 用线程加速排序、转换等步骤支持多线程,在大样本或批量处理时开启线程,比单线程串行跑完再进入下一步更省总时间。
  4. 字段改动留底修改标记位或序列名称前先保留原始文件,这类改动不可逆,出问题时要能退回到未修改的版本重做。
  5. 固定住工具版本分析流程里把所用版本记录下来,同一批样本后续复现或对比时,避免因工具行为变化导致结果对不上。

SAMtools适合谁用?

WHO IS IT FOR工具标签

测序分析研究人员

推荐

日常处理比对结果、需要做排序索引和统计的基因组或转录组研究者,熟悉命令行后能把它嵌进自己的分析链路。

生信流程开发者

推荐

在自动化流程里需要稳定的格式转换与文件整理组件,把它作为流程中的固定环节,配合脚本批量调用。

只做变异检测的用户

有条件

如果目标只是拿到变异列表,通常由上游流程封装好这个工具;单独使用它反而要自己拼装完整步骤。

习惯图形界面的人

有条件

功能全部通过命令行子命令暴露,没有可视化操作界面,不熟悉终端操作的人上手成本较高。

临床报告直接使用者

不推荐

它输出的是中间比对文件与统计数据,不是可直接交付的报告;需要结果解读和合规输出时,还要另配下游工具与流程。

SAMtools优点和缺点

PROS & CONS工具标签

优点

  • 围绕比对文件的核心操作齐全,转换、排序、索引、统计一站式覆盖。
  • 命令行为主,便于写进脚本做批量处理和自动化流程。
  • 在测序分析生态里被广泛使用,上下游工具的格式衔接顺畅。
  • 子命令分工清晰,每一步只做一件事,方便逐步排查问题。
  • 长期作为比对文件处理的基础组件存在,流程样例和用法资料多。

缺点

  • 没有图形界面,全部操作依赖命令行,新手门槛明显。
  • 只处理比对结果,不负责测序比对本身,单独使用价值有限。
  • 格式和标记位概念较多,不熟悉规范时容易误改字段。
  • 错误提示偏底层,文件损坏或格式不符时排查要花时间。
  • 按区域切片等操作依赖索引,缺索引时性能会明显下降。

SAMtools常见问题

FAQ工具标签
SAMtools 是做什么的?

它是一组处理测序比对结果的命令行程序,围绕 SAM、BAM、CRAM 这几种比对格式做转换、排序、索引、切片和统计。通常在比对完成之后、变异检测或表达定量之前使用,把比对文件整理成下游工具能直接读的形式。它本身不做比对。

它和测序比对工具有什么区别?

比对工具负责把测序读段定位到参考基因组上,产出比对结果;SAMtools 处理的是这些结果文件,负责整理格式、排序、建索引和统计。两者是前后衔接关系,多数分析流程里会先比对再调用它,把文件收拾好后再交给下一步。

不会命令行能用吗?

功能全部通过终端里的子命令调用,没有点选式界面。不熟悉命令行的使用者通常需要借助封装好的分析流程或图形化平台,由它们在后端调用这个工具;直接上手需要先熟悉基本命令用法和文件格式概念。

按区域取数据为什么取不出来?

按坐标区间提取记录依赖比对文件已经建好索引。没有索引时无法按区域跳转读取,这部分操作会失败或退化成整文件扫描。处理前先对目标文件完成排序并生成索引,再按区域取数据即可。

它能直接给出变异列表吗?

它主要负责为变异检测准备输入,比如做碱基校正、整理比对记录和构建索引,而不是产出最终的变异清单。变异识别的判断逻辑由专门的变异检测工具完成,两者在流程中相邻但职责不同,需要配合使用。

处理大样本时怎么提速?

在排序、格式转换这类步骤上开启多线程,并尽量用管道把连续的子命令串起来,减少中间文件的读写。此外,给常用的比对文件提前建好索引,避免每次查询都从头扫描整个文件,对反复检索同一区域的场景帮助明显。

SAMtools竞品对比

COMPARISON工具标签
工具编辑评分价格核心功能平台
SAMtools本工具 4.2 未标价 格式转换;排序与索引;区域切片;比对统计 —
SPAdes — 未标价 可以拼接来自多个平台的测序数据 —
SMPDB 小分子通路 — 未标价 简介:SMPDB 是一个交互的、可... Web
DACAPO — 未标价 基于密度泛函理论计算总量的程序 —
TopHat — 未标价 一个快速的将 RNA-Seq 数据进行快速剪接映射的程序 Linux / Mac OS X
React Flow — 未标价 交互式流程图编辑器 —