宏基因组中的病毒组分析(4)CoverM计算RPKM

宏基因组中的病毒组分析:

第一步:宏基因组中的病毒组分析(1)病毒序列的鉴定geNomad-CSDN博客

第二步:宏基因组中的病毒组分析(2)checkV评估病毒基因组的质量-CSDN博客

第三步:宏基因组中的病毒组分析(3)CD-HIT聚类vOTU-CSDN博客

第四步:使用 CoverM v0.6.1 计算 vOTU 的 RPKM 值

CoverM v0.6.1 是一款专注于宏基因组学应用的覆盖度计算工具。它基于映射(mapping)技术,通过读取和分析比对(mapping)结果来评估一组contigs或genomes的覆盖情况。

1、工作原理

CoverM能够接收BAM格式的序列比对文件(如由bwa-mem等比对工具生成的),以及FASTA格式的参考基因组文件,然后计算每个参考序列区域的覆盖深度,从而帮助研究人员了解宏基因组测序数据的覆盖均匀性和完整性。

2、安装  

可以直接通过conda安装,安装命令如下:

#创建环境
conda env create -n coverm 
#安装coverM
conda install coverm

 或者从GitHub中下载对应操作系统的预编译二进制文件,也可以从源码编译安装,但需要预先安装Rust环境。

3、运行

coverM可以处理genome和contig两种类型。

3.1. genome-计算基因组的覆盖率

计算genomes的覆盖度,可以使用命令:

coverm genome <GENOME_DESCRIPTION> <MAPPING_INPUT> ..
#例如
 coverm genome --bam-files my_sorted_bam.bam --genome-fasta-directory genomes/

首先对于mapping的参数,有几种类型:

-1 : Forward FASTA/Q file(s) for mapping. 
-2 : Reverse FASTA/Q file(s) for mapping
#这两个可以是压缩文件也可以不是

-c/--coupled :一对或者多对forward和reverse的被压缩的FASTA/Q file(s)
#例如:<sample1_R1.fq.gz> <sample1_R2.fq.gz> <sample2_R1.fq.gz> <sample2_R2.fq.gz> ..

--interleaved :属于interleaved的mapping文件,FASTA/Q file(s)
--single :未配对的 FASTA/Q 文件进行mapping
#这两个可以是压缩文件也可以不是

-b/--bam-files :BAM 文件的路径。除非指定,否则这些必须进行引用排序(例如使用 samtools sort),在这种情况下,它们必须进行读取名称排序。

对于基因组的定义:

-f, --genome-fasta-files
每个基因组的 FASTA 文件的路径,例如 .pathA/genome1.fna pathB/genome2.fa

d, --genome-fasta-directory 
包含每个基因组的 FASTA 文件的目录

-x, --genome-fasta-extension
使用 . 指定的目录中基因组的文件扩展名。[默认:-d/--genome-fasta-directoryfna]

--genome-fasta-list 
包含 FASTA 文件路径的文件,每行一个。

-r, --reference 路径
重叠群的 FASTA 文件,例如串联基因组或宏基因组组装,或 minimap2 索引(带)、频闪索引(带)或 BWA 索引茎(带)。如果提供并指定了多个引用 FASTA 文件,则读取将作为分片 BAM 单独映射到引用。注意:如果在其他地方指定了基因组 FASTA 文件(例如,使用 或 ),则不需要作为参考 FASTA 文件,可以通过连接输入基因组来派生。在这些情况下,如果需要备用参考序列集,则可以选择指定。--minimap2-reference-is-index--strobealign-use-index-p bwa-mem/bwa-mem2--sharded--genome-fasta-files--genome-fasta-directory--reference--reference

-s, --separator 字符
此字符将参考文件中的基因组名称与重叠群名称分开。需要。[默认值:未指定]--reference

--单基因组
所有重叠群都来自同一个基因组。需要。[默认:未设置]--reference

--genome-definition 文件
包含 genome_name<tab> 重叠群行列表的文件,用于定义每个重叠群的基因组。需要。[默认:未设置]--reference

--use-full-contig-names
指定输入 BAM 文件是使用映射软件生成的,该软件在参考定义中包含每个重叠群的全名(即空格后的字符),以便在读取基因组时,按原样记录重叠群名称。

3.2. contig - 计算每个重叠群组的读取覆盖率

计算contig的读取覆盖率,可以使用命令:

coverm contig <MAPPING_INPUT> ..

contig的计算比genome要相对简单,只需要输入一个mapping的参数,与genome相同,此处不再赘述了。

contig需要输入一个参考路径,即contig的FASTA文件

-r, --reference 
重叠群的 FASTA 文件,例如串联基因组或宏基因组组装。[除非另有说明,否则为必填项]

3.3阈值的选择

阈值的选择可以根据需求从文献中获取,我采用的是以下阈值:

-min-read-percent-identity 0.95、-min-read-aligned-percent 0.75、-contig-end-exclusion 0 和 -m rpkm

3.4.注意事项

我在进行计算时,mapping的参数选择经常报错,后面采取了-1和-2的方式,将forward和reverse的fastq文件单独输入,基本没有报错,可以多尝试一些方法。

4、优缺点

4.1.优点

  1. 专注于宏基因组学:CoverM特别针对宏基因组学数据的覆盖度计算进行了优化,能够处理大规模的数据集。
  2. 灵活性强:支持多种输入格式和参数配置,用户可以根据具体需求灵活调整。
  3. 易于使用:通过简单的命令行接口即可使用,无需复杂的图形用户界面。
  4. 性能高效:基于Rust语言编写,具有较高的执行效率和稳定性。

4.2.缺点

  1. 依赖外部工具:虽然CoverM本身功能强大,但通常需要与bwa-mem、samtools等外部工具结合使用,增加了使用的复杂性。
  2. 学习曲线:对于不熟悉命令行工具的用户来说,可能需要一定的时间来熟悉和学习CoverM的使用方法。
  3. 配置管理:CoverM的配置主要通过命令行参数实现,对于复杂的重复任务,可能需要手动编写脚本来管理配置,不如使用配置文件那样直观和方便。
  4. 安全性问题:虽然CoverM v0.6.1 版本的具体安全性问题未明确提及,但软件更新迭代中可能存在安全漏洞,需要用户及时关注并更新到最新版本。

5.总结

 综上所述,CoverM v0.6.1 是一款功能强大、灵活易用的宏基因组学覆盖度计算工具,适用于科研人员在进行宏基因组学数据分析时评估数据的覆盖情况。然而,用户在使用时需要注意与其他工具的兼容性、学习命令行接口以及关注软件的安全性更新。

参考来源:wwood/CoverM: Read coverage calculator for metagenomics (github.com)

  • 21
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ming314!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值