UMI 去重矫正 —— ConsensusCruncher
2020-12-04 本文已影响0人
名本无名
介绍
ConsensusCruncher
是一个抑制二代测序数据错误率的工具
通过唯一标识符 unique molecular identifiers(UMI)
对同一 DNA
模板上的 read
进行去重
原理
1. 模型
modelConsensusCruncher
有两个 model
-
fastq2bam
:该模块用于从
FASTQ
文件中提取UMI
,然后利用BWA
进行序列比对 -
consensus
:先对
read
进行去重,生成单链一致序列(SSCS
)及未去重序列,然后进行单链矫正。分别将去重后的正链
read1
和负链的read2
, 正链read2
和负链的read1
进行配对矫正不匹配的碱基,赋值为
N
image.png
- 对同一模板,分别以
fwd_R1、rev_R2、fwd_R2、rev_R1
的方式进行分组去重- 去重方法基于碱基频率,频率低于阈值赋值为
N
- 去重之后,以
fwd_R1、fwd_R2
配对,rev_R2、rev_R1
配对进行矫正
安装
1. 依赖
这个 pipeline
依赖下面的软件
Program | Version | Purpose |
---|---|---|
Python | 3.5.1 | 运行主程序 |
BWA | 0.7.15 | read 比对 |
Samtools | 1.3.1 | sort/index bam |
其中 python
的包可以通过如下命令进行安装
pip install -r requirements.txt
2. 命令行参数
2.1 fastq2bam
--fastq1 FASTQ1 FASTQ R1 文件
--fastq2 FASTQ2 FASTQ R2 文件
-o OUTPUT, --output OUTPUT
输出文件目录,未指定会新建
-n FILENAME, --name FILENAME
输出文件名
-b BWA, --bwa BWA bwa 软件安装目录
-r REF, --ref REF 参考基因组
-s SAMTOOLS, --samtools SAMTOOLS
samtools 软件安装目录
-p PATTERN, --bpattern PATTERN
barcode 的模式
-l LIST, --blist LIST
barcodes 列表文件(txt 文件,每行代表一个唯一的 barcode)
2.1 ConsensusCruncher
-h, --help 帮助信息
-i BAM, --input BAM 输入的 BAM 文件 barcodes 已经提取到 header
-o OUTPUT, --output OUTPUT
输出的目录
-s SAMTOOLS, --samtools SAMTOOLS
samtools 软件安装目录
--scorrect {True,False}
单链矫正, default: True.
-b BEDFILE, --bedfile bed 文件
--cutoff CUTOFF 去重时碱基所占比例阈值, default: 0.7 (70%),
低于阈值的位置碱基赋值为 N
--cleanup {True,False}
删除中间结果文件
运行示例
脚本
PATH="工作目录"
BWA="bwa 软件路径"
INDEX="参考基因组 fastq 文件"
SAMTOOLS="samtools 软件路径"
python ConsensusCruncher.py fastq2bam \
--fastq1 $PATH/test/fastq/R1.fastq \
--FASTQ2 $PATH/test/fastq/R2.fastq \
-o $PATH/test \
-b $BWA \
-r $INEDEX \
-s $SAMTOOLS \
-bpattern NNT