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

相关文章

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

C#中lock关键字的使用小结

《C#中lock关键字的使用小结》在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时,其他线程无法访问同一实例的该代码块,下面就来介绍一下lock关键字的使用... 目录使用方式工作原理注意事项示例代码为什么不能lock值类型在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时

MySQL 强制使用特定索引的操作

《MySQL强制使用特定索引的操作》MySQL可通过FORCEINDEX、USEINDEX等语法强制查询使用特定索引,但优化器可能不采纳,需结合EXPLAIN分析执行计划,避免性能下降,注意版本差异... 目录1. 使用FORCE INDEX语法2. 使用USE INDEX语法3. 使用IGNORE IND

C# $字符串插值的使用

《C#$字符串插值的使用》本文介绍了C#中的字符串插值功能,详细介绍了使用$符号的实现方式,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录$ 字符使用方式创建内插字符串包含不同的数据类型控制内插表达式的格式控制内插表达式的对齐方式内插表达式中使用转义序列内插表达式中使用

flask库中sessions.py的使用小结

《flask库中sessions.py的使用小结》在Flask中Session是一种用于在不同请求之间存储用户数据的机制,Session默认是基于客户端Cookie的,但数据会经过加密签名,防止篡改,... 目录1. Flask Session 的基本使用(1) 启用 Session(2) 存储和读取 Se

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

SQL Server安装时候没有中文选项的解决方法

《SQLServer安装时候没有中文选项的解决方法》用户安装SQLServer时界面全英文,无中文选项,通过修改安装设置中的国家或地区为中文中国,重启安装程序后界面恢复中文,解决了问题,对SQLSe... 你是不是在安装SQL Server时候发现安装界面和别人不同,并且无论如何都没有中文选项?这个问题也

Java Thread中join方法使用举例详解

《JavaThread中join方法使用举例详解》JavaThread中join()方法主要是让调用改方法的thread完成run方法里面的东西后,在执行join()方法后面的代码,这篇文章主要介绍... 目录前言1.join()方法的定义和作用2.join()方法的三个重载版本3.join()方法的工作原