PMAT安装及使用(Bioinformatics工具-021)

2024-06-06 03:28

本文主要是介绍PMAT安装及使用(Bioinformatics工具-021),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

01 背景

PMAT 是一个高效的组装工具包,用于利用第三代(HiFi/CLR/ONT)测序数据组装植物线粒体基因组。PMAT 还可以用于组装叶绿体基因组或动物线粒体基因组。

PMAT:使用低覆盖度HiFi测序数据的高效植物线粒体组装工具包-文献精读分享2

02 参考
https://github.com/bichangwei/PMAT  #官网
 03 安装
#1 Install using gitgit clone https://github.com/bichangwei/PMAT.git
cd PMAT/bin
chmod a+x PMAT
PMAT --help#2 Install by downloading the source codeswget https://github.com/bichangwei/PMAT/archive/refs/tags/v1.5.3.tar.gz
tar -zxvf v1.5.3.tar.gz
cd PMAT-1.5.3/bin
chmod a+x PMAT
PMAT --help#3 requirementBLASTn
Singularity ≥ 1.3
Apptainer ≥ 1.3
Canu > v2.0
NextDenovo 3.1 blast详见往期
3.2 Singularity 如下
wget https://github.com/hpcng/singularity/releases/download/v3.7.2/singularity-3.7.2.tar.gz
tar -xzf singularity-3.7.2.tar.gz
cd singularity
./mconfig
cd builddir
make
sudo make install
3.3 Apptainer如下
Building & Installing from RPM
劝退没有root权限使用者,需要安装GO图形库
https://github.com/apptainer/apptainer/blob/main/INSTALL.md
make -C builddir rpm RPMPREFIX=/opt/apptainer
更换方式,一键安装
conda install conda-forge::apptainer
3.4 Canu同上
conda install -c bioconda canu

Blast安装及使用-Blast+2.14.0(bioinfomatics tools-001)

04 使用及常用命令行
运行 PMAT --help 查看程序的使用指南。用法: PMAT <command> <arguments>```______     ___           __        ____       _____________ 
|   __  \  |   \        /   |      / __ \     |_____   _____|
|  |__)  | | |\ \      / /| |     / /  \ \          | |      
|   ____/  | | \ \    / / | |    / /____\ \         | |      
|  |       | |  \ \  / /  | |   / /______\ \        | |      
|  |       | |   \ \/ /   | |  / /        \ \       | |      
|__|       |_|    \__/    |_| /_/          \_\      |_|      
```PMAT            一个用于植物线粒体基因组高效组装的工具包
版本           1.5.3
贡献者         Bi,C. 和 Han,F.
电子邮件       bichwei@njfu.edu.cn, hanfc@caf.ac.cn更多关于 PMAT 的信息,请访问 https://github.com/bichangwei/PMAT可选参数:
-h, --help     显示此帮助信息并退出
-v, --version  显示程序版本并退出命令:autoMito    一步完成线粒体基因组的de novo组装。该命令可以直接从原始测序数据生成主组装图。graphBuild  如果'autoMito'模式无法生成线粒体基因组组装图,您可以使用此命令手动选择种子进行组装。
4.1 autoMito
autoMito
运行 PMAT autoMito --help 查看使用指南。必需参数:-i INPUT, --input INPUT输入原始测序文件-o OUTPUT, --output OUTPUT输出目录-st SEQTYPE, --seqtype SEQTYPE测序平台 (ONT/CLR/HiFi)-g GENOMESIZE, --genomesize GENOMESIZE输入物种的基因组大小,例如 1G, 1000M可选参数:-h, --help            显示此帮助信息并退出-tk TASK, --task TASKall/p1/ 默认: allall : de novo 组装,包括对 ONT/CLR 数据的纠错,以及对 HiFi 数据不纠错p1  : 导入已纠错的 ONT/CLR 数据进行直接组装-tp TYPE, --type TYPEmt/pt/all 默认: mtmt   : 组装线粒体基因组pt   : 组装叶绿体基因组all  : 组装线粒体和叶绿体基因组-cs CORRECTSOFT, --correctsoft CORRECTSOFT使用 nextDenovo 或 Canu 进行纠错,默认: NextDenovo-cp CANU, --canu CANU请提供 Canu 的安装路径-np NEXTDENOVO, --nextDenovo NEXTDENOVO请提供 nextDenovo 的安装路径-cfg CORRECTCFG, --correctcfg CORRECTCFGnextDenovo 纠错的配置文件-fc FACTOR, --factor FACTOR对错误纠正的 ONT、CLR 或 HiFi 数据进行子集提取,采样比例因子为 0-1,默认: 1-sd SUBSEED, --subseed SUBSEED采样集随机数种子,默认: 6-bn BREAKNUM, --breaknum BREAKNUM用此参数分割长读数 (>30k),默认: 20000-ml MINOVERLAPLEN, --minoverlaplen MINOVERLAPLEN设置最小重叠长度,默认: 40-mi MINIDENTITY, --minidentity MINIDENTITY设置最小重叠相识度,默认: 90-cpu CPU              线程数,默认: 8-l MINLINK, --minLink MINLINK根据用户提供的最小链接深度进行过滤-m, --mem             将序列数据保留在内存中以加快 CPU 时间-v, --version         显示程序版本并退出注意事项:确保 BLASTn 已安装在 PATH 中。
-tk: 此参数有两个选项:“all”或“p1”。对于 ONT 或 CLR 原始数据,需要纠正读取错误并修剪原始数据。如果是已纠错的 ONT/CLR 数据,可以设置“p1”以跳过纠错步骤。对于 HiFi 数据,此参数可以忽略。
-cs: 对于 ONT 或 CLR 原始数据,用户应提供 -cs 参数以选择纠错软件,默认:Nextdenovo。
-cp: 使用 Canu 进行纠错时,用户需要使用 -cp 参数指定 Canu 的安装路径。当 Canu 已添加到 PATH 时,此参数可以忽略。
-np: 使用 NextDenovo 纠错时,用户需要使用 -np 参数指定 NextDenovo 的安装路径。此外,NextDenovo 纠错后需要使用 canu 修剪数据,因此需要使用 -cp 参数指定 Canu 的安装路径。当 NextDenovo 和 Canu 已添加到 PATH 时,此参数可以忽略。
-cfg: 使用 NextDenovo 纠错时,用户需要使用 -cfg 参数指定配置文件,建议检查 NextDenovo 的配置文件内容。同时建议在配置文件中为 correction_options 添加 -b 参数。
-fc: 此参数可用于随机选择测序数据的子集进行纠错和组装,默认:全部数据。
-ml: 用于组装的参数,默认设置为 40,推荐设置:40~200。
-mi: 用于组装的参数,默认设置为 90,推荐设置:90~98。
4.2 graphBuild
graphBuild
如果 PMAT 在 'autoMito' 模式下未能生成组装图,您可以使用此命令手动选择种子进行组装。运行 PMAT graphBuild --help 查看使用指南。必需参数:-c CONTIGGRAPH, --ContigGraph CONTIGGRAPHPMATContigGraph.txt:一个包含所有 Contig 之间连接信息的文件-a ALLCONTIGS, --AllContigs ALLCONTIGSPMATAllContigs.fna:一个包含所有 Contig 信息的文件-o OUTPUT, --output OUTPUT输出目录-gs GENOMESIZE, --genomesize GENOMESIZE输入物种的基因组大小,例如 1G, 1000M-rs READSIZE, --readsize READSIZE组装用的读取大小或文件,例如 5G 或 assembly_seq.cut20K.fasta可选参数:-h, --help            显示此帮助信息并退出-tp TYPE, --type TYPEmt/pt/all 默认: mtmt   : 组装线粒体基因组pt   : 组装叶绿体基因组all  : 组装线粒体和叶绿体基因组-cpu CPU              线程数,默认: 8-s SEEDS [SEEDS ...], --seeds SEEDS [SEEDS ...]用于扩展的 ContigID。多个 ContigID 应以空格分隔。例如: 1 312 356-l MINLINK, --minLink MINLINK根据用户提供的最小链接深度进行过滤-v, --version         显示程序版本并退出注意事项:确保 BLASTn 已安装在 PATH 中。
-c: 由 autoMito 命令生成的 PMATContigGraph.txt。
-a: 由 autoMito 命令生成的 PMATAllContigs.fna。
-gs: 物种的基因组大小。
-rs: 组装使用的数据量,或提供由 graphBuild 命令生成的 assembly_seq.cut20K.fasta。
-s: 手动选择用于扩展的种子,建议使用 3 个以上的种子。使用空格分隔不同的种子 ID,例如 1,312,356。
4.3 实例
示例集合
示例1下载一个模拟的拟南芥 HiFi 数据集:
```
wget https://github.com/bichangwei/PMAT/releases/download/v1.1.0/Arabidopsis_thaliana_550Mb.fa.gz
```
然后运行 autoMito 命令进行一键组装:
```
PMAT autoMito -i Arabidopsis_thaliana_550Mb.fa.gz -o ./test1 -st hifi -g 120m -m
```
然后使用 graphBuild 命令手动选择种子进行组装(用于 autoMito 命令无法自动获得 GFA 文件时):
```
# 根据 PMATContigGraph.txt 文件,手动选择 3 个或更多匹配线粒体基因组测序深度的 Contigs
PMAT graphBuild -c ./test1/assembly_result/PMATContigGraph.txt -a ./test1/assembly_result/PMATAllContigs.fna -gs 125m -rs ./test1/subsample/assembly_seq.cut20K.fasta -o ./test1_gfa -s 343 345 905 513 1344
```
PMAT 使用不同线程数的运行时间
8 CPUs: 13m25.342s; 16 CPUs: 9m29.853s; 32 CPUs: 8m42.429s; 64 CPUs: 7m57.279s示例2下载一个模拟的苹果 HiFi 数据集:
```
wget https://github.com/bichangwei/PMAT/releases/download/v1.1.0/Malus_domestica.540Mb.fasta.gz
```
然后运行 autoMito 命令进行一键组装:
```
PMAT autoMito -i Malus_domestica.540Mb.fasta.gz -o ./test3 -st hifi -g 703m -m
```
然后使用 graphBuild 命令手动选择种子进行组装(用于 autoMito 命令无法自动获得 GFA 文件时):
```
# 根据 PMATContigGraph.txt 文件,手动选择 3 个或更多匹配线粒体基因组测序深度的 Contigs
PMAT graphBuild -c ./test3/assembly_result/PMATContigGraph.txt -a ./test3/assembly_result/PMATAllContigs.fna -gs 225m -rs ./test3/subsample/assembly_seq.cut20K.fasta -o ./test3_gfa -s 1 2 15391
```
PMAT 使用不同线程数的运行时间
8 CPUs: 21m12.306s; 16 CPUs: 12m14.663s; 32 CPUs: 7m58.749s; 64 CPUs: 6m48.915s示例3使用 IBM Aspera 下载测试的普通豆 CLR 数据:
```
ascp -v -QT -l 400m -P33001 -k1 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR291/006/SRR2912756/SRR2912756_subreads.fastq.gz .
```
然后运行 autoMito 命令进行一键组装(CLR):
```
PMAT autoMito -i SRR2912756_subreads.fastq.gz -o ./test_clr -st clr -g 540m -cs nextDenovo -np path/nextDenovo -cp path/canu -cfg nextdenovo.cfg -m
```示例4使用 IBM Aspera 下载测试的美国黑杨 ONT 数据:
```
ascp -v -QT -l 400m -P33001 -k1 -i ~/.aspera/connect/etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/fastq/SRR122/038/SRR12202038/SRR12202038_1.fastq.gz  .
```
然后运行 autoMito 命令进行一键组装(ONT):
```
PMAT autoMito -i SRR12202038_1.fastq.gz -o ./test_ont -st ont -g 430m -cs nextDenovo -np path/nextDenovo -cp path/canu -cfg nextdenovo.cfg -m
```结果文件
输出文件包括:
- */subsample/assembly_seq_subset.1.0.fasta, 组装用的子样数据
- */subsample/assembly_seq.cut20K.fasta, 组装用的修剪数据
- */assembly_result/PMATAllContigs.fna, 包含 Contig 序列的组装结果
- */assembly_result/PMATContigGraph.txt, 包含 Contig 链接关系的组装结果
- */assembly_result/PMAT_mt_raw.gfa, 线粒体基因组的初始组装图
- */assembly_result/PMAT_mt_master.gfa, 线粒体基因组的优化组装图
- */assembly_result/PMAT_pt_raw.gfa, 叶绿体基因组的初始组装图
- */assembly_result/PMAT_pt_master.gfa, 叶绿体基因组的优化组装图
 05 参考文献

Bi C, Shen F, Han F, Qu Y, Hou J, Xu K, Xu LA, He W, Wu Z, Yin T. PMAT: an efficient plant mitogenome assembly toolkit using low-coverage HiFi sequencing data. Hortic Res. 2024, 11(3):uhae023. doi: 10.1093/hr/uhae023.
Bi C, Qu Y, Hou J, Wu K, Ye N, and Yin T. Deciphering the multi-chromosomal mitochondrial genome of Populus simonii. Front. Plant Sci. 2022, 13:914635.doi:10.3389/fpls.2022.914635.

这篇关于PMAT安装及使用(Bioinformatics工具-021)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1034959

相关文章

Spring Boot整合Redis注解实现增删改查功能(Redis注解使用)

《SpringBoot整合Redis注解实现增删改查功能(Redis注解使用)》文章介绍了如何使用SpringBoot整合Redis注解实现增删改查功能,包括配置、实体类、Repository、Se... 目录配置Redis连接定义实体类创建Repository接口增删改查操作示例插入数据查询数据删除数据更

使用python生成固定格式序号的方法详解

《使用python生成固定格式序号的方法详解》这篇文章主要为大家详细介绍了如何使用python生成固定格式序号,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录生成结果验证完整生成代码扩展说明1. 保存到文本文件2. 转换为jsON格式3. 处理特殊序号格式(如带圈数字)4

Java使用Swing生成一个最大公约数计算器

《Java使用Swing生成一个最大公约数计算器》这篇文章主要为大家详细介绍了Java使用Swing生成一个最大公约数计算器的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下... 目录第一步:利用欧几里得算法计算最大公约数欧几里得算法的证明情形 1:b=0情形 2:b>0完成相关代码第二步:加

win10安装及配置Gradle全过程

《win10安装及配置Gradle全过程》本文详细介绍了Gradle的下载、安装、环境变量配置以及如何修改本地仓库位置,通过这些步骤,用户可以成功安装并配置Gradle,以便进行项目构建... 目录一、Gradle下载1.1、Gradle下载地址1.2、Gradle下载步骤二、Gradle安装步骤2.1、安

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三