得到病毒contig后(具体方法查看以往文章,宏基因组中的病毒组分析(1)病毒序列的鉴定geNomad-CSDN博客)使用 CheckV 进一步处理预测的病毒序列,以评估病毒基因组的质量。
1、工作原理
CheckV 是一个完全自动化的命令行工具,主要用于评估单重叠群(contig)病毒基因组的质量,包括识别整合原病毒中的宿主污染、估计基因组片段的完整性以及识别封闭基因组。其工作原理可以概括为以下几个主要步骤:
- 去除宿主污染:
- CheckV 首先通过与自定义的隐马尔可夫模型(HMM)数据库进行比较,将基因注释为病毒或细菌。
- 接着,它扫描重叠群(从5'到3'),比较相邻开放阅读框(ORF)之间的基因注释和GC含量,以计算每个基因间位置的分数,并识别宿主-病毒断点。
- 通过高分(>1.2)和特定基因数量(如宿主区域中至少2个宿主特异性基因,病毒区域中至少2个病毒特异性基因)来判定并去除宿主污染。
- 估计基因组完整性:
- CheckV 使用两种算法来估计基因组的完整性:基于平均氨基酸同一性(AAI)的方法和基于HMM的方法。
- AAI 方法通过将蛋白质与CheckV基因组数据库中的参考基因组进行比较,计算重叠群长度与匹配的参考基因组长度之间的比率来估计完整性。
- HMM 方法则识别重叠群上的病毒HMM,并与共享相同HMM的参考基因组长度进行比较,给出完整性的估计范围。
- 预测封闭基因组:
- CheckV 通过识别直接末端重复(DTR)、原噬菌体(原病毒)边界和反向末端重复(ITR)等特征来预测封闭基因组。
- 这些特征如DTR(在contig的开始/结束处重复序列>20-bp)和ITR(在contig的起始/末端重复>20-bp的序列,但3'重复被倒置)用于确认环状或线性基因组的完整性。
- 总结质量:
- 根据上述步骤的结果,CheckV 生成报告文件,并将查询重叠群分配到五个质量层之一(如完整、高质量、中等质量、低质量和质量未定)。
2、运行命令
执行以下命令安装 CheckV,下载数据库,然后运行程序:
conda install -c conda-forge -c bioconda checkv
checkv download_database ./
export CHECKVDB=</path/to/database>
checkv end_to_end <input_file.fna> output_directory -t 16
2.1 安装
安装CheckV有三种方法:conda,pip或者docker,此处介绍conda的方法
#官方推荐
conda install -c conda-forge -c bioconda checkv=1.0.1
#我个人在使用过程中,conda无法安装,只能使用mamba安装
mamba install checkv=1.0.1
checkV还需要安装数据库,可以利用conda安装或者手动安装:
conda安装
checkv download_database ./
手动安装
wget https://portal.nersc.gov/CheckV/checkv-db-v1.0.tar.gz
tar zxvf checkv-db-v1.0.tar.gz
#也可以指定数据库的位置
export CHECKVDB=/path/to/checkv-db-v1.0
2.2运行
checkv end_to_end <input> <output> [options]
可以使用 checkv end_to_end -h 查看参数使用:
positional arguments:
input 以FASTA格式输入核苷酸序列(支持.gz,.bz2和.xz文件)
output 输出目录
optional arguments:
-h, --help 显示此帮助消息并退出
-d PATH 引用数据库路径。默认情况下,使用 CHECKVDB 环境变量【添加后可不写】
--remove_tmp 从输出目录中删除中间文件
-t INT 用于Prodigal和DIAMOND的线程数
--restart 覆盖现有的中间文件。默认情况下,CheckV 在程序中断的地方继续
--quiet 禁止记录消息
programs:
end_to_end 运行完整的管道以估计完整性,污染并识别封闭的基因组
contamination 识别并消除集成前病毒上的宿主污染
completeness 估计基因组片段的完整性
complete_genomes 根据末端重复序列和侧翼宿主区域识别完整基因组
quality_summary 跨模块汇总结果
download_database 下载最新版本的CheckV数据库
checkV也支持分步使用:
checkv contamination input_file.fna output_directory -t 16
checkv completeness input_file.fna output_directory -t 16
checkv complete_genomes input_file.fna output_directory
checkv quality_summary input_file.fna output_directory
3、结果文件
quality_summary.tsv是来自三个主要模块的集成结果,是需要查看的主要文件。
文件包括:contig_id、contig_length、provirus、proviral_length、gene_count 、viral_genes、host_genes、checkv_quality、miuvig_quality 、completeness、completeness_method、complete_genome_type、contamination、kmer_freq和warnings。
1、至少 1 kb 的contigs,与 CheckV数据库中的基因组具有高度相似性(即具有高质量或中等完整性估计)或包含自动选择直接末端重复;(checkv_quality)
2、长于 10 kb 的contigs需要具有高于 0.8 的 geNomad 病毒评分(virus_score),并且编码一种病毒标志(例如,终止酶、衣壳蛋白、门户蛋白等)(n_hallmarks)(由 geNomad 确定),或者具有gNomad 病毒标记(marker_enrichment)至少为 5.0;
3、短于10kb和长于5kb的contigs需要具有高于0.9的geNomad病毒评分,编码至少一种病毒标志并且具有高于2.0的病毒标记富集。
这产生的病毒contigs,将其用于下游分析。
4、 优点和不足
4.1.优点
- 自动化程度高:CheckV提供了完整的自动化流程,用户只需提供基因组序列文件即可进行全面的质量评估,大大节省了研究时间和人力成本。
- 准确性高:通过结合多种算法和数据库,CheckV能够准确识别宿主污染、估计基因组完整性和识别封闭基因组,为病毒组学研究提供了可靠的工具。
- 功能全面:CheckV不仅限于单一的质量评估任务,还提供了多种相关的分析功能,如预测病毒-宿主边界、下载最新数据库等,满足了用户多样化的需求。
4.2.缺点
- 计算资源需求高:由于CheckV需要进行复杂的序列比对和数据分析,因此对计算资源的需求较高,可能不适合在资源有限的计算环境下运行。
- 数据库更新频率:虽然CheckV提供了更新数据库的功能,但数据库的更新频率可能受到多种因素的影响,如新病毒序列的发现和验证速度等。因此,用户需要关注数据库的更新情况,以确保分析结果的准确性。
- 学习曲线较陡:对于不熟悉命令行工具和生物信息学分析的用户来说,CheckV的学习曲线可能较陡。用户需要花费一定的时间和精力来熟悉其命令行界面、参数设置和分析流程。
综上所述,CheckV 1.0.1是一个功能强大、自动化程度高的病毒基因组质量评估工具,在病毒组学研究中具有广泛的应用前景。