三代测序 - 数据质控 | LongReadSum

一、LongReadSum简介

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

图1. Kai Wang教授团队

二、安装方法

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分数的统计信息。
图2.LongReadSum报告示例截图

参考文献

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).

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容