一、LongReadSum简介
LongReadSum 是美国费城儿童医院Kai Wang教授团队(图1)开发的一款专门针对长读长测序数据设计的快速质控工具(如纳米孔测序、PacBio测序等)。它支持多种文件格式,包括FASTA、FASTQ、BAM、POD5、FAST5和sequencing_summary.txt,能够快速生成HTML和文本格式的质控报告。无论是全基因组测序(WGS)、RNA-Seq,还是甲基化修饰的数据,LongReadSum都能轻松应对,其优点在于支持的数据格式多样。到目前为止最新版本v1.5.0更新于2025年1月23号。

二、安装方法
1. 使用conda或mamba安装(推荐)
首先,创建一个新的conda环境longreadsum(Python 3.9),并进行激活。
#创建conda环境
$ conda create -n longreadsum python=3.9
#激活longreadsum环境
$ conda activate longreadsum
#如果使用mamba,请将conda替换为mamba
然后,运行以下命令安装LongReadSum及其依赖软件:
$ conda install -c wglab -c conda-forge -c jannessp -c bioconda longreadsum=1.5.0
#如果使用mamba,请将conda替换为mamba
2. 使用Docker安装
确保安装Docker后,从Docker Hub拉取最新的LongReadSum镜像。
$ docker pull genomicslab/longreadsum
运行时,使用以下命令(注意将C:/Users/.../DataDirectory替换为你的数据目录):
$ docker run -v C:/Users/.../DataDirectory:/mnt/ -it genomicslab/longreadsum bam -i /mnt/input.bam -o /mnt/output
三、使用教程
1. 基本用法
$ longreadsum <FILETYPE> -i $INPUT_FILE -o $OUTPUT_DIRECTORY
其中,<FILETYPE>是文件类型, $INPUT_FILE 是输入文件路径,$OUTPUT_DIRECTORY 是输出目录。例如,对于 FASTQ 文件,运行:
$ longreadsum fq -i input.fastq -o output_directory
不支持
fastq.gz的压缩格式,使用起来较麻烦!
2. 常用参数
| 参数 | 描述 | 默认值 |
|---|---|---|
-i, --input |
输入文件路径 | 无 |
-o, --outputfolder |
输出目录 | output_longreadsum |
-t, --threads |
使用的线程数 | 1 |
-Q, --outprefix |
输出文件前缀 | QC_ |
-g, --log |
日志文件路径 | log_output.log |
-G, --log-level |
日志级别(1: DEBUG, 2: INFO, 3: WARNING, 4: ERROR, 5: CRITICAL) | 2 |
-I, --inputs |
多个输入文件路径(逗号分隔) | 无 |
-P, --pattern |
使用通配符(*)指定多个输入文件 | 无 |
3. 全基因组测序(WGS)BAM文件 (示例)
对于全基因组测序数据,经过与参考基因组(如人类的GRCh38)比对后生成的BAM文件,LongReadSum可以生成详细的质控报告,包括读长分布、碱基质量等信息。
$ longreadsum bam -i input.bam -o output_directory
4. 带有甲基化修饰的BAM文件(示例)
如果BAM文件包含甲基化修饰信息,可以使用以下参数:
$ longreadsum bam -i input.bam -o output_directory --mod --modprob 0.8 --ref reference.fasta
其中,--mod 表示启用甲基化修饰分析;--modprob 是修饰概率阈值(默认是0.8);--ref是参考基因组文件(用于鉴定CpG位点)
5. RNA-Seq数据(示例)
对于RNA-Seq数据,LongReadSum可以计算转录完整性数值(transcript integrity number,TIN)。
$ longreadsum bam -i input.bam -o output_directory --genebed gene.bed --min-coverage 10 --sample-size 100
其中,--genebed:基因 BED 文件;--min-coverage:最小覆盖度,默认为 10;--sample-size:样本大小,默认为 100。
6. PacBio未比对的BAM文件(示例)
$ longreadsum bam -i input.bam -o output_directory
7. ONT POD5文件(示例)
ONT POD5 文件是 Oxford Nanopore 测序数据的一种格式,包含原始信号数据。LongReadSum 支持对 POD5 文件及其对应的 basecalled BAM 文件进行质控分析。
#单个文件
$ longreadsum pod5 -i input.pod5 -o output_directory --basecalls input.bam
#目录中的多个文件
#如果你有一个包含多个 POD5 文件的目录,可以使用通配符批量处理
$ longreadsum pod5 -P "input_directory/*.pod5" -o output_directory --basecalls input.bam
#指定读取 ID
$ longreadsum pod5 -i input.pod5 -o output_directory --basecalls input.bam --read_ids "read_id1,read_id2"
#指定采样数量
$ longreadsum pod5 -i input.pod5 -o output_directory --basecalls input.bam --read_count 5
-
-b, --basecalls用于信号提取的 basecalled BAM 文件路径;-r, --read_ids从文件中提取的读取 ID 列表(逗号分隔);-R, --read_count从文件中随机采样的读取数量 - 需要生成带有move table输出的 basecalled BAM 文件。例如,对于 dorado,参数是
--emit-moves。
8. ONT FAST5文件(示例)
ONT FAST5文件是 Oxford Nanopore 测序数据的另一种格式,包含原始信号数据和 basecalling 信息。LongReadSum 支持对 FAST5 文件进行信号和序列质量的质控分析。
#信号质量分析(Signal QC)
$ longreadsum f5s -i input.fast5 -o output_directory
#序列质量分析(Sequence QC)
$ longreadsum f5 -i input.fast5 -o output_directory
-
-r, --read_ids从文件中提取的读取 ID 列表(逗号分隔);-R, --read_count从文件中随机采样的读取数量。
9. FASTQ和FASTA文件(示例)
#fastq文件
$ longreadsum fq -i input.fastq -o output_directory
#fasta文件
$ longreadsum fa -i input.fasta -o output_directory
10. 实际运行
一般来说对于.fastq和PacBio的未比对.bam文件最为常见,下面以.fastq数据格式为例。1_raw_fastq文件夹存放需要质控的数据文件,1_longreadsum存放结果文件。
# 示例
$ longreadsum fq -i $INPUT_FILE -o $OUTPUT_DIRECTORY #单个样本
# 实际运行, 会自动生成-o 的路径
$ longreadsum fq -i 1_raw_fastq/Case_1.fastq -o 1_longreadsum/Case1
$ longreadsum fq -i 1_raw_fastq/Case_2.fastq -o 0_longreadsum/Case2
$ longreadsum fq -i 1_raw_fastq/Case_3.fastq -o 0_longreadsum/Case3
$ longreadsum fq -i 1_raw_fastq/Control_1.fastq -o 0_longreadsum/Control_1
$ longreadsum fq -i 1_raw_fastq/Control_2.fastq -o 0_longreadsum/Control_2
$ longreadsum fq -i 1_raw_fastq/Control_3.fastq -o 0_longreadsum/Control_3
缺点是无法直接识别
.fastq.gz文件。为了节省硬盘空间,在做质控前需要将压缩文件先解压,然后质控完再压缩回去,对于较大的数据整个过程比较耗时。
四、输出结果
LongReadSum生成的质控报告包括HTML(图2)和文本格式的文件,包括:
- 碱基质量分布:展示测序数据的碱基质量分布情况。
- 读长分布:分析测序读长的分布范围。
- 甲基化修饰分析:对于带有修饰信息的BAM文件,报告修饰位点的分布。
- 转录完整性数(TIN):对于RNA-Seq数据,提供TIN分数的统计信息。
参考文献
1 Perdomo, J. E., Ahsan, M. U., Liu, Q., Fang, L. & Wang, K. LongReadSum: A fast and flexible quality control and signal summarization tool for long-read sequencing data. Computational and Structural Biotechnology Journal (2025).