Samtools手册中文版

软件手册:Samtools 手册翻译
Samtools 是一个用于处理和分析 SAM(Sequence Alignment/Map)和 BAM(Binary Alignment/Map)格式文件的工具集。它提供了多种命令用于序列比对、格式转换、索引创建和统计分析等。

接下来我们翻译这一部分的命令说明:

常用 samtools 命令列表

好的,我们将这39条命令拆分为三部分进行说明,并为每个部分提供举例。

1. 添加或替换读取组信息
samtools addreplacerg -r 'ID:fish' -r 'LB:1334' -r 'SM:alpha' -o output.bam input.bam

解释:将读取组信息(ID、Library、Sample等)添加到 BAM 文件中。
示例:如果你有一个 BAM 文件 input.bam,想为其添加样本信息 alpha,并将结果保存为 output.bam,可以使用此命令。

2. 裁剪扩增子
samtools ampliconclip -b bed.file input.bam

解释:基于 BED 文件中的位置信息,对 BAM 文件中的扩增子进行裁剪。
示例:将 input.bam 中的序列根据 bed.file 中定义的区域进行裁剪,生成更新后的 BAM 文件。

3. 生成扩增子统计数据
samtools ampliconstats primers.bed in.bam

解释:根据引物 BED 文件,生成扩增子统计信息。
示例:通过 primers.bed 中定义的引物区域,统计 in.bam 文件中的数据,常用于分析扩增子测序数据。

4. 计算基因组覆盖范围
samtools bedcov aln.sorted.bam

解释:计算 BAM 文件中的覆盖范围。
示例:统计 aln.sorted.bam 中每个区域的读取覆盖数,用于了解基因组覆盖情况。

5. 校正 MD 标签
samtools calmd in.sorted.bam ref.fasta

解释:基于参考基因组文件,更新或校正 BAM 文件中的 MD 标签。
示例:使用 ref.fasta 作为参考,修复或校正 in.sorted.bam 文件中的 MD 标签。

6. 连接 BAM 文件
samtools cat out.bam in1.bam in2.bam in3.bam

解释:将多个 BAM 文件合并为一个。
示例:将 in1.bamin2.bamin3.bam 合并为一个新的 BAM 文件 out.bam

7. 按名称整理 BAM 文件
samtools collate -o aln.name_collated.bam aln.sorted.bam

解释:按读取名称整理 BAM 文件中的读取序列。
示例:将 aln.sorted.bam 按读取名称进行整理,输出为 aln.name_collated.bam

8. 生成共识序列
samtools consensus -o out.fasta in.bam

解释:从 BAM 文件生成共识序列。
示例:从 in.bam 文件中提取共识序列,并将其保存为 out.fasta

9. 计算覆盖率
samtools coverage aln.sorted.bam

解释:计算 BAM 文件的覆盖率。
示例:统计 aln.sorted.bam 中的每个基因组区域的覆盖率。

10. 计算 CRAM 文件大小
samtools cram-size -v -o out.size in.cram

解释:计算 CRAM 文件大小的摘要信息。
示例:生成 in.cram 文件的大小摘要,并输出为 out.size

11. 去除插入位点的 BAM 文件
samtools depad input.bam

解释:去除 BAM 文件中的插入位点,生成去插入位点的 BAM 文件。
示例:对 input.bam 进行处理,去除插入的位点信息。

12. 计算读取深度
samtools depth aln.sorted.bam

解释:计算 BAM 文件中每个位置的读取深度。
示例:统计 aln.sorted.bam 文件中每个位点的深度,常用于覆盖率分析。

13. 生成字典文件
samtools dict -a GRCh38 -s "Homo sapiens" ref.fasta

解释:基于参考基因组文件生成序列字典文件。
示例:生成 ref.fasta 的字典文件,包含注释信息。

14. 生成参考基因组索引
samtools faidx ref.fasta

解释:对参考基因组文件进行索引,生成一个 .fai 文件,方便后续快速查找。
示例:为 ref.fasta 生成索引文件 ref.fasta.fai,便于快速检索序列。

15. 将 BAM 转换为 FASTA
samtools fasta input.bam > output.fasta

解释:从 BAM 文件中提取序列,并将其转换为 FASTA 格式。
示例:将 input.bam 中的序列提取并保存为 output.fasta 文件。

16. 将 BAM 转换为 FASTQ
samtools fastq input.bam > output.fastq

解释:从 BAM 文件中提取序列,并将其转换为 FASTQ 格式。
示例:将 input.bam 文件中的序列提取并保存为 output.fastq 文件。

17. 修复配对信息
samtools fixmate in.namesorted.sam out.bam

解释:修复 BAM 文件中成对读取的配对信息。
示例:对按名称排序的 SAM 文件 in.namesorted.sam 进行处理,修复配对信息并输出为 BAM 文件 out.bam

18. 解释 FLAG 字段
samtools flags PAIRED,UNMAP,MUNMAP

解释:解释 BAM 文件中的 FLAG 字段,将其转换为可读形式或数值形式。
示例:解释 PAIRED(成对读取)、UNMAP(未比对的读取)和 MUNMAP(下一个片段未比对)这些 FLAG 的含义。

19. 统计 FLAG 信息
samtools flagstat aln.sorted.bam

解释:生成 BAM 文件中的 FLAG 字段的统计信息。
示例:统计 aln.sorted.bam 文件中每个 FLAG 的数量,如成对读取、未比对读取等。

20. 生成 FASTQ 索引
samtools fqidx ref.fastq

解释:为 FASTQ 文件生成索引。
示例:为 ref.fastq 文件生成一个 .fai 索引文件,以便快速检索序列。

21. 打印 BAM 文件头
samtools head in.bam

解释:打印 BAM 文件的头部信息,通常包含文件的元数据信息。
示例:打印 in.bam 文件的头部信息,用于检查文件格式或验证元数据。

22. 获取 BAM 文件索引信息
samtools idxstats aln.sorted.bam

解释:从 BAM 文件的索引中获取统计信息。
示例:打印 aln.sorted.bam 文件的索引统计信息,如参考序列的长度、映射读取的数量等。

23. 导入 FASTQ 文件
samtools import input.fastq > output.bam

解释:将 FASTQ 文件转换为未比对的 BAM 文件。
示例:将 input.fastq 文件转换为 BAM 格式并保存为 output.bam

24. 为 BAM 文件生成索引
samtools index aln.sorted.bam

解释:为排序后的 BAM 文件生成索引,便于快速检索特定区域的读取。
示例:为 aln.sorted.bam 生成 .bai 索引文件,允许通过参考序列位置快速查找读取。

25. 标记重复读取
samtools markdup in.algnsorted.bam out.bam

解释:在 BAM 文件中标记 PCR 或光学重复的读取。
示例:将 in.algnsorted.bam 文件中的重复读取标记,并将结果输出为 out.bam

26. 合并 BAM 文件
samtools merge out.bam in1.bam in2.bam in3.bam

解释:将多个 BAM 文件合并为一个文件。
示例:将 in1.bamin2.bamin3.bam 合并为一个 out.bam 文件,通常用于将多个样本数据合并。

27. 生成 pileup 文件
samtools mpileup -f ref.fasta -r chr3:1,000-2,000 in1.bam in2.bam

解释:生成 pileup 格式的输出文件,显示指定区域内的每个碱基的覆盖情况。
示例:在 in1.bamin2.bam 文件中生成参考序列 ref.fasta 的第3号染色体1,000到2,000碱基的 pileup 信息。

28. 处理相位信息
samtools phase input.bam

解释:处理 BAM 文件中的相位信息,将成对读取的相位信息区分开。
示例:为 input.bam 文件中的成对读取处理相位信息,帮助确定各个片段的父母来源。

29. 快速检查文件完整性
samtools quickcheck in1.bam in2.cram

解释:快速检查 BAM 或 CRAM 文件是否完整,是否包含有效的头部和 EOF。
示例:快速检查 in1.bamin2.cram 是否包含有效的头部和结尾标记,以确认文件完整性。

30. 生成参考文件
samtools reference -o ref.fa in.cram

解释:从 CRAM 文件中提取参考序列信息,生成一个参考基因组文件。
示例:从 in.cram 中提取参考序列,输出为 ref.fa

31. 替换 BAM 文件头
samtools reheader in.header.sam in.bam > out.bam

解释:用新的头部信息替换 BAM 文件的原始头部信息。
示例:用 in.header.sam 中的头部信息替换 in.bam 的头部,并将结果保存为 out.bam

32. 重置 BAM 文件
samtools reset -o /tmp/reset.bam processed.bam

解释:重置 BAM 文件,移除比对信息和标志,生成未比对的 BAM 文件。
示例:重置 processed.bam 中的比对信息,并将结果保存到 /tmp/reset.bam

33. 列出样本信息
samtools samples input.bam

解释:列出 BAM 文件中的样本信息。
示例:显示 input.bam 文件中的所有样本名称和相关信息。

34. 排序 BAM 文件
samtools sort -T /tmp/aln.sorted -o aln.sorted.bam aln.bam

解释:对 BAM 文件按照左端坐标进行排序,并输出排序后的 BAM 文件。
示例:将 aln.bam 按照坐标排序,结果保存为 aln.sorted.bam,临时文件保存路径为 /tmp/aln.sorted

35. 拆分 BAM 文件
samtools split merged.bam

解释:根据读取组(Read Group)信息将 BAM 文件拆分成多个文件。
示例:将 merged.bam 文件按读取组信息拆分为多个 BAM 文件。

36. 统计 BAM 文件
samtools stats aln.sorted.bam

解释:生成 BAM 文件的统计数据,结果包括映射质量、读取长度分布等。
示例:生成 aln.sorted.bam 的统计信息,用于分析读取质量、覆盖率等。

37. 剪切目标区域
samtools targetcut input.bam

解释:基于读取的覆盖连续性剪切 BAM 文件中的目标区域。
示例:对 input.bam 进行剪切,生成剪切后的 BAM 文件,适用于特定的克隆或扩增子测序数据。

38. 查看比对信息
samtools tview aln.sorted.bam ref.fasta

解释:使用基于 ncurses 的文本查看器,显示 BAM 文件中的比对信息。
示例:在终端中查看 aln.sorted.bam 中比对到参考基因组 ref.fasta 的结果,交互式查看对齐情况。

39. 转换 SAM/BAM/CRAM 格式
samtools view -bt ref_list.txt -o aln.bam aln.sam.gz

解释:将 SAM、BAM 或 CRAM 文件转换为另一种格式,如 BAM 转 SAM,SAM 转 BAM。
示例:将 aln.sam.gz 转换为 BAM 格式 aln.bam,使用 ref_list.txt 文件作为参考。
好的,接下来是这段 DESCRIPTION(描述)COMMANDS(命令) 部分的翻译。


DESCRIPTION(描述)

Samtools 是一组用于操作 SAM(序列比对/映射)、BAM 和 CRAM 格式文件的工具。它可以在这些格式之间进行转换,还能够对文件进行排序、合并和索引,并且能够快速检索任意区域的读取信息。

Samtools 被设计为流式处理工具,它将输入文件 - 视为标准输入(stdin),将输出文件 - 视为标准输出(stdout)。因此,多个命令可以通过 Unix 管道(pipes)组合使用。Samtools 始终将警告和错误消息输出到标准错误输出(stderr)。

Samtools 还可以打开远程 FTP 或 HTTP(S) 服务器上的文件(如果文件名以 ftp://http:// 等开头)。Samtools 会在当前工作目录中查找索引文件,若索引文件不存在,则会自动下载索引文件。除非特别要求,Samtools 不会检索整个比对文件。

如果需要索引,Samtools 会寻找附加在文件名上的索引后缀(如 in.bam.bai),如果找不到,它会再次尝试使用没有文件名后缀的文件(如 in.bai)。不过,如果索引位于完全不同的位置或具有不同的名称,则数据文件名和索引文件名可以通过 ##idx## 语法组合在一起。例如,/data/in.bam##idx##/indices/in.bam.bai 可明确指定数据和索引文件的位置。


COMMANDS(命令)

每个命令都有单独的手册页面,可以通过如 man samtools-view 或使用较新的 GNU 手册页工具 man samtools view 来查看。以下是各子命令的简要语法和描述。

常见选项在**GLOBAL COMMAND OPTIONS(全局命令选项)**部分有说明。

view
samtools view [选项] in.sam|in.bam|in.cram [region...]

如果未指定选项或区域,将会输出指定输入文件(SAM、BAM 或 CRAM 格式)中的所有比对数据,并以 SAM 格式输出(默认不含头部)。

你可以在输入文件名后指定一个或多个空格分隔的区域,以限制输出只包含那些与指定区域重叠的比对。指定区域要求输入文件已按坐标排序并生成索引。

此命令还可以将输出格式从 SAM 转换为 BAM 或 CRAM,因此也可以作为文件格式转换工具。

tview
samtools tview [-p chr:pos] [-s STR] [-d display] <in.sorted.bam> [ref.fasta]

基于 ncurses 库的文本比对查看器。在查看器中,按 ? 可以查看帮助,按 g 可以从某个区域开始查看比对,例如 chr10:10,000,000=10,000,000(在查看同一参考序列时使用)。

quickcheck
samtools quickcheck [选项] in.sam|in.bam|in.cram [ ... ]

快速检查输入文件是否完整。检查文件开头是否包含有效头部(适用于所有格式),并检查文件末尾是否有完整的文件结束标记(EOF,仅适用于 BAM 格式)。

该命令不会读取文件中间的数据,因为这样会非常耗时,因此该命令无法检测到文件内部的损坏,但它可以用于在执行更复杂的任务之前检查文件是否被截断。

如果任何输入文件没有有效头部或缺少 EOF 块,该命令将以非零退出代码退出。否则,将成功退出(退出代码为 0)。

head
samtools head [选项] in.sam|in.bam|in.cram

打印输入文件的头部信息,且可选地输出文件的前几条比对记录。此命令始终按原样显示文件中的头部信息,且不会添加额外的 @PG 头部。

index
samtools index [-bc] [-m INT] aln.sam.gz|aln.bam|aln.cram [out.index]

为按坐标排序的 SAM、BAM 或 CRAM 文件生成索引,以便快速随机访问。注意,若为 SAM 文件,必须先进行 BGZF 压缩(block gzip file)。

从 Samtools 1.16 版本开始,此命令也可以接受多个比对文件名,并为它们单独生成索引。

该索引在使用 samtools view 和其他类似命令时,通过指定区域参数限制操作区域时是必需的。

如果提供了输出文件名,索引文件将保存为 out.index。否则,对于 CRAM 文件 aln.cram,索引文件将生成为 aln.cram.crai;对于 BAM 或 SAM 文件,索引文件可能为 aln.bam.baialn.bam.csi,具体取决于选择的索引格式。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/890102.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高性能计算应用优化实践之VASP

VASP简介 VASP是最常见的第一性原理计算软件之一。第一性原理计算是基于密度泛函理论&#xff0c;通过选择合适的交换关联赝势(GGA或LDA)&#xff0c;然后基于迭代方法自洽求解Kohn-Sham方程&#xff0c;直到所求出的新的电荷密度与输入的电荷密度在收敛判据范围内&#xff0c…

Python酷库之旅-第三方库Pandas(145)

目录 一、用法精讲 656、pandas.Timestamp.resolution属性 656-1、语法 656-2、参数 656-3、功能 656-4、返回值 656-5、说明 656-6、用法 656-6-1、数据准备 656-6-2、代码示例 656-6-3、结果输出 657、pandas.Timestamp.second属性 657-1、语法 657-2、参数 6…

JAVA开发中SpringMVC框架的使用及常见的404问题原因以及SpringMVC框架基于注解的开发实例

一、JAVA开发中SpringMVC框架的使用及常见的404问题原因 使用SpringMVC建立一个web项目&#xff0c;在IDEA中file->new->project建立一个空项目project。不用选择create from archetype从模板创建。然后在项目的pom.xml中添加公共的依赖包括org.springframework&#xff…

YOLO11改进|卷积篇|引入空间通道重组卷积ScConv

目录 一、【SCConv】卷积1.1【SCConv】卷积介绍1.2【SCConv】核心代码 二、添加【SCConv】卷积2.1STEP12.2STEP22.3STEP32.4STEP4 三、yaml文件与运行3.1yaml文件3.2运行成功截图 一、【SCConv】卷积 1.1【SCConv】卷积介绍 SCConv 模块提供了一种新的视角来看待CNNs的特征提取…

如何通过钢筋计来优化施工安全

在现代建筑工程中&#xff0c;施工安全一直是首要关注的问题。特别是在高层建筑、桥梁和地下工程等复杂结构中&#xff0c;确保钢筋的正确安装和稳定性能&#xff0c;直接关系到工程的整体安全性和耐久性。钢筋计作为一种专门用于测量和监测钢筋应力和应变的设备&#xff0c;其…

4.人员管理模块(开始预备工作)——帝可得管理系统

目录 前言一、需求分析1.页面原型2.创建SQL 二、使用若依框架生成前后端代码1.添加目录菜单2.添加数据字典3.配置代码生成信息4.下载代码并导入项目5.快速导入方法 三、 总结 前言 提示&#xff1a;本篇讲解人员管理模块的开发的预备工作&#xff0c;包括需求分析、生成代码、…

DockerCompose 启动 open-match

背景介绍 open-match是Google和unity联合开源的支持实时多人匹配的框架&#xff0c;已有多家游戏厂商在生产环境使用&#xff0c;官网 https://open-match.dev/site/ 。原本我们使用的是UOS上提供的匹配能力&#xff0c;但是UOS目前不支持自建的Dedicated servers 集群&#x…

grpc的python使用

RPC 什么是 RPC &#xff1f; RPC&#xff08;Remote Procedure Call&#xff09;远程过程调用&#xff0c;是一种计算机通信协议&#xff0c;允许一个程序&#xff08;客户端&#xff09;通过网络向另一个程序&#xff08;服务器&#xff09;请求服务&#xff0c;而无需了解…

【Matlab】Matlab 导入数据.csv或者.xlsx文件,然后使用这些数据来绘制图表

Matlab 导入数据.csv或者.xlsx文件&#xff0c;然后使用这些数据来绘制图表 初始数据 filename C:\Users\jia\Desktop\yadian\data\1Hz 2024_09_12 17_10_06.csv; 代码&#xff1a; clc;clear close all; % 读取Excel文件 filename C:\Users\jia\Desktop\yadian\data\1Hz …

【EXCEL数据处理】保姆级教程 000016案例 EXCEL的vlookup函数。

【EXCEL数据处理】000016案例 vlookup函数。 前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 【EXCEL数据处理】保姆级教…

Flutter包管理(三)

1、作用 在APP的实际开发过程中往往会依赖很多包&#xff0c;而这些包之间存在着交叉依赖、版本依赖&#xff0c;由开发者自己管理手动管理会非常麻烦&#xff0c;每种开发生态或编程官方会提供一些包的管理工具&#xff0c;在Flutter中我们在pubspec.yaml文件中来管理第三方依…

机器学习/数据分析--用通俗语言讲解时间序列自回归(AR)模型,并用其预测天气,拟合度98%+

时间序列在回归预测的领域的重要性&#xff0c;不言而喻&#xff0c;在数学建模中使用及其频繁&#xff0c;但是你真的了解ARIMA、AR、MA么&#xff1f;ACF图你会看么&#xff1f;&#xff1f; 时间序列数据如何构造&#xff1f;&#xff1f;&#xff1f;&#xff0c;我打过不少…

GS-SLAM论文阅读笔记-MGSO

前言 MGSO首字母缩略词是直接稀疏里程计(DSO)&#xff0c;我们建立的光度SLAM系统和高斯飞溅(GS)的混合。这应该是第一个前端用DSO的高斯SLAM&#xff0c;不知道这个系统的组合能不能打得过ORB-SLAM3&#xff0c;以及对DSO会做出怎么样的改进以适应高斯地图&#xff0c;接下来…

Android一个APP里面最少有几个线程

Android一个APP里面最少有几个线程 参考 https://www.jianshu.com/p/92bff8d6282f https://www.jianshu.com/p/8a820d93c6aa 线程查看 Android一个进程里面最少包含5个线程&#xff0c;分别为&#xff1a; main线程(主线程&#xff09;FinalizerDaemon线程 终结者守护线程…

Golang | Leetcode Golang题解之第462题最小操作次数使数组元素相等II

题目&#xff1a; 题解&#xff1a; func partition(a []int, l, r int) int {x : a[r]i : l - 1for j : l; j < r; j {if a[j] < x {ia[i], a[j] a[j], a[i]}}a[i1], a[r] a[r], a[i1]return i 1 }func randomPartition(a []int, l, r int) int {i : rand.Intn(r-l1…

Android车载——VehicleHal运行流程(Android 11)

1 概述 本篇主要讲解VehicleHal的主要运行流程&#xff0c;包括设置属性、获取属性、订阅属性、取消订阅、持续上报属性订阅等。 2 获取属性流程 2.1 获取属性流程源码分析 作为服务注册到hwServiceManager中的类是VehicleHalManager&#xff0c;所以&#xff0c;CarServic…

【Qt】控件概述(2)—— 按钮类控件

控件概述&#xff08;2&#xff09; 1. PushButton2. RadioButton——单选按钮2.1 使用2.2 区分信号 clicked&#xff0c;clicked(bool)&#xff0c;pressed&#xff0c;released&#xff0c;toggled(bool)2.3 QButtonGroup分组 3. CheckBox——复选按钮 1. PushButton QPushB…

简单粗暴理解GNN、GCN、GAT

GNN 思想&#xff1a;近朱者赤近墨者黑 GNN的流程&#xff1a; 聚合&#xff08;把邻居的信息贴到自己身上来&#xff0c;作为它自己特征的补足&#xff09;更新循环&#xff08;为什么要多次&#xff1f;看以下例子&#xff09; GNN能干嘛&#xff1f; 1.结点分类&#xf…

动态规划lc

先找到规律&#xff0c;然后找边界情况&#xff1b;部分特殊情况分类讨论 *递归 70.爬楼梯 简单 提示 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 示例 1&#xff1a; 输入&#xff1a…

基于yolov8、yolov5的PCB板缺陷检测系统(含UI界面、数据集、训练好的模型、Python代码)

blog.csdnimg.cn/direct/6f53422ed9fd44dc8daad6dc5481c4c9.png) 项目介绍 项目中所用到的算法模型和数据集等信息如下&#xff1a; 算法模型&#xff1a;     yolov8、yolov8 SE注意力机制 或 yolov5、yolov5 SE注意力机制 &#xff0c; 直接提供最少两个训练好的模型…