高性能计算基因组序列分析
项目描述
mappgene
“mappgene”是一个针对高性能并行计算设计的SARS-CoV-2变体调用管道。它主要封装了iVar(https://github.com/andersen-lab/ivar)和LoFreq(https://github.com/CSB5/lofreq)变体调用器,以及snpEff/snpSift注释工具。
输入:短读配对端Illumina RTA3测序数据,以fastq格式(gzip压缩)提供(例如,SAMPLE_R1.fastq.gz SAMPLE_R2.fastq.gz
)
输出:以.vcf
变体调用格式文件表示的变体,以及snpEff/snpSift的表格文本输出
快速入门
singularity pull library://avilaherrera1/mappgene/image.sif:latest
git clone https://github.com/LLNL/mappgene.git
pip install git+file:///absolute/path/to/mappgene
mappgene --container image.sif --outputs outputs samples/*fastq.gz
要求
- Python 3.7+
- Singularity
安装
我们建议将mappgene安装到python3虚拟环境中。我们发现以“可编辑”模式安装很有用,这样可以轻松自定义和修改mappgene。
python3 -m venv mg
source mg/bin/activate
pip install -e git+file:///absolute/path/to/mappgene
别忘了下载相应的singularity容器!它包含管道组件和依赖项。
- iVar(在图像构建时的最新开发分支)
- LoFreq 2.1.5
- 有关更多详细信息,请参阅
mappgene/data/container/recipe.def
singularity pull library://avilaherrera1/mappgene/image.sif:latest
或访问https://cloud.sylabs.io/library/avilaherrera1/mappgene/image.sif并点击“下载”。
示例测试
通过运行以下示例输入数据来检查mappgene在您的系统上是否工作,数据来源为这里。
mappgene --test
用法
请参阅mappgene -h
以获取选项列表和详细用法。简而言之
mappgene [OPTIONS] <SAMPLE1_R1.fastq.gz> <SAMPLE1_R2.fastq.gz> [SAMPLEN_R1.fastq.gz ...]
关键选项
--container
:告诉mappgene singularity容器所在的位置--slurm
:使用slurm调度程序并行处理样本--use_full_node
:每个节点1个样本--primers_bp
:指定要使用的捆绑引物集--depth_cap
:设置lofreq call -d
值(每个位置的读取不超过这么多)--read_cutoff_bp
:设置ivar trim -m
值(剪裁后移除小于这个值的读取)--variant_frequency
:设置ivar variants -t
值(不调用低于这个频率的变体)--no_ncov
:不使用内置的Sars-CoV-2参考和引物。--fixq
,--no-fixq
:应用或应用意见的基础质量分数调整(默认为调整)。请参阅已知错误和怪癖。--gff
:捆绑的gff3参考基因组注释文件的基名--reference_accession
:捆绑参考基因组的登录号
说明
选择引物、参考和注释
mappgene的各个阶段都需要与参考有关的引物坐标。因此,引物和参考是相关联的,在准备mappgene运行时应特别注意,尤其是在从旧批处理脚本复制粘贴时。
Ivar使用上述--reference_accession
、--gff
和--primers_bp
。snpEff步骤使用--reference_accession
来推导参考基因组的数据库名称。
病毒 | --reference_accession |
--gff |
--primers_bp |
注意 |
---|---|---|---|---|
Sars-CoV-2 | NC_045512.2 |
GCF_009858895.2_ASM985889v3_genomic.gff |
1200 |
"Midnight" 1200bp扩增子引物 |
400 |
V3 400bp ARTIC引物 | |||
v4 |
V4 ARTIC引物 | |||
v4.1 |
V4 ARTIC引物(Omicron) | |||
combo_3_4.1 |
V3 + V4.1引物 | |||
Zika | KU501215.1 |
KU501215.1.gff3 |
zibra_KU501215.1 |
Zibra引物映射到PRVABC59 |
KX087101.3 |
KX087101.3.gff3 |
zibra_KX087101.3 |
Zibra引物映射到PRVABC59(用于Grubaugh等,2019年的研究) | |
KU955593.1 |
KU955593.1.gff3 |
zibra_KU955593.1 |
Zibra引物映射到FSS13025(柬埔寨) | |
KJ776791.2 |
KJ776791.2.gff3 |
zibra_KJ776791.2 |
Zibra引物映射到法属波利尼西亚2013年(用于Theys等,2017年的研究) |
并行处理多个样本
您可以指定具有特定路径或Unix样式的通配符的多个样本。读取必须为gzip压缩(.fastq.gz
)。
如果有两个输入文件名具有匹配的样本名,加上_R1
和_R2
,那么mappgene将假设它们是一对解交织。对于解交织读取,您必须确保
- 第一和第二次读取文件分别包含
_R1
和_R2
- 每个样本只有一个读取文件对(没有孤儿,没有多运行样本,多样本受试者的样本单独处理)
- 在展开shell通配符时,读取对出现在命令行上
mappgene <SAMPLE1>_R1.fastq.gz <SAMPLE1>_R2.fastq.gz [<SAMPLE2>_R1.fastq.gz <SAMPLE2>_R2.fastq.gz ...]
交织样本
如果输入文件名不包含_R1
或_R2
,mappgene可能会将输入解释为交织样本,并在处理过程中自动解交织。
mappgene <SAMPLE1.FASTQ.GZ> <SAMPLE2.FASTQ.GZ> <SAMPLE3.FASTQ.GZ>
mappgene <SAMPLE_DIR>/*.fastq.gz
Slurm调度
可以使用Slurm作业调度器在HPC系统上并行运行多个受试者。
mappgene --slurm -n 1 -b mybank -p mypartition <SAMPLE.FASTQ.GZ>
输出
默认情况下,结果将在mappgene_outputs/<SAMPLE>
中,或者由--outputs
指定的位置。
关键输出文件
mappgene_outputs/
<SAMPLE>/
worker.stdout # (log file capturing stdout)
ivar_outputs/
<SAMPLE>.ivar.snpEff.vcf # (ivar variant calls)
<SAMPLE>.ivar.snpSift.txt
<SAMPLE>.ivar.lofreq.snpEff.vcf # (lofreq variant calls)
<SAMPLE>.ivar.lofreq.snpSift.txt
已知错误和异常
- 使用Flux调度器的
--flux
选项已损坏。 - 只有
fastp
遵守mappgene的--threads
选项。bwa mem
和lofreq
使用不同的线程数。此外,如果没有指定--use_full_node
,mappgene将尝试在每个节点上运行多个样本。 fastp
、snpEff
和snpSift
将数据写入当前工作目录之外的磁盘——默认情况下是用户的家目录,这可能位于不同的文件系统上,该文件系统不适合并行I/O。此输出通常不使用,但它仍然可能会覆盖或损坏现有文件,或影响所有用户的集群性能。- virarecon的
ivar_variants_to_vcf.py
尝试将同一密码子中的连续SNPs组合成单个多核苷酸变异。以前ivar
和virarecon脚本版本的组合引入了运行时错误(通过使用修补的dev
分支版本来解决)。 - 不建议在同一个工作目录中运行多个mappgene实例,因为会使用公共临时目录,这会导致可怕的警告、可能的错误以及可能损坏的运行。
mappgene
假设质量分数是RTA3 "分数类别"标签(错误、低、中、高)而不是连续的数值分数。尽管质量分数应反映每个碱基调用类别的平均分数,但mappgene采取保守的方法,将中和高分数调整为这些类别的下限,即Q37->Q30和Q25->Q20。这影响了质量感知变异调用器lofreq
,使其需要更多的证据(即读取覆盖深度)来调用变异而不是测序错误。请参阅--fixq
和--no-fixq
选项。
许可证
Mappgene是在BSD-3许可证下分发的。
LLNL-CODE-821512
您可能会对MappgeneSummary感兴趣,这是一个用于分析mappgene结果的总结包。
如果您在研究中使用mappgene,请引用该论文。谢谢!
Kimbrel J, Moon J, Avila-Herrera A, Martí JM, Thissen J, Mulakken N, Sandholtz SH, Ferrell T, Daum C, Hall S, Segelke B, Arrildt KT, Messenger S, Wadford DA, Jaing C, Allen JE, Borucki MK. 与突发变异相关的多个突变可以在早期SARS-CoV-2大流行临床样本中被检测为低频突变。病毒。2022; 14(12):2775. https://doi.org/10.3390/v14122775
项目详细信息
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
构建分布
mappgene-1.4.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bea43f5576d219aaaacc621b246b3ce7fc4bbaa7df4149ab6a4c3120491e63db |
|
MD5 | 80de6048b4f104865494a5672f6959c6 |
|
BLAKE2b-256 | ab0ed9d547c98258cc8247ff6dc0d999c9916dcb513164391c6148565b39c349 |
mappgene-1.4.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a20b218a3e7ebc5a26c261754a392bf30d030a2419e412c06614c1c2d0eedc0d |
|
MD5 | 29a75e6a92b4d6e6c51c4586d937f69a |
|
BLAKE2b-256 | 1181bcd43d5472b0e30f566bd1d22c408f772dbaa85c9fffd9193e039171fd18 |