跳转到主要内容

geNomad:移动遗传元件的鉴定

项目描述

geNomad

geNomad:移动遗传元件的鉴定

功能

geNomad的主要目标是识别测序数据(分离株、宏基因组、宏转录组)中的病毒和质粒。它还提供了一些额外的功能,可以帮助您进行分析

  • 病毒基因组的分类学分配。
  • 鉴定整合到宿主基因组中的病毒(前病毒)。
  • 蛋白质的功能注释。

文档

有关安装说明、geNomad的工作原理以及如何执行它的详细说明,请参阅完整文档:https://portal.nersc.gov/genomad/

Web应用程序

geNomad作为Web应用程序在NMDC EDGE平台上可用。在那里您可以上传您的序列数据,在浏览器中查看结果,并将数据下载到您的计算机上。

引用geNomad

如果您在您的作品中使用了geNomad,请考虑引用其论文

使用geNomad鉴定移动遗传元件

Camargo, A. P., Roux, S., Schulz, F., Babinski, M., Xu, Y., Hu, B., Chain, P. S. G., Nayfach, S., & Kyrpides, N. C. — Nature Biotechnology (2023), DOI: 10.1038/s41587-023-01953-y.

快速入门

我们建议用户在开始使用geNomad之前阅读文档。然而,如果您时间紧迫,可以按照以下快速分步示例进行。

安装

首先,您需要安装geNomad。有几种方法可以做到这一点,但在这里我们将使用mamba,因为它将为我们处理所有依赖项。

# Create an environment for geNomad
mamba create -n genomad -c conda-forge -c bioconda genomad
# Activate the geNomad environment
mamba activate genomad

或者,您可以使用Docker运行geNomad。

# Pull the image
docker pull antoniopcamargo/genomad
# Run the image
docker run --rm -ti -v "$(pwd):/app" antoniopcamargo/genomad

下载数据库

geNomad依赖于一个包含用于分类序列的标记器配置文件、它们的分类信息、它们的注释信息等数据的数据库。因此,您应该首先将数据库下载到当前目录。

genomad download-database .

数据库将位于genomad_db目录中。

如果您愿意,也可以从Zenodo下载数据库,并手动提取。

执行geNomad

现在您可以开始了!geNomad通过依次执行一系列模块来工作(您可以在管道文档中找到更多关于此的信息),但我们提供了一个方便的end-to-end命令,可以一次执行整个管道。

在本例中,我们将使用一个Klebsiella pneumoniae基因组(GCF_009025895.1)作为输入。您可以使用包含核酸序列的任何FASTA文件作为输入。geNomad适用于分离基因组、宏基因组以及宏转录组。

执行geNomad的命令结构如下

genomad end-to-end [OPTIONS] INPUT OUTPUT DATABASE

因此,为了运行完整的geNomad管道(end-to-end命令),以核酸FASTA文件(GCF_009025895.1.fna.gz)和数据库(genomad_db)作为输入,我们将执行以下命令

genomad end-to-end --cleanup --splits 8 GCF_009025895.1.fna.gz genomad_output genomad_db

结果将写入genomad_output目录中。

关于上述命令的三个重要细节

  • 使用了--cleanup选项来强制geNomad删除执行过程中生成的中间文件。这将为您节省一些存储空间。
  • 这里使用了--splits 8参数,以便在notebook中运行此示例。geNomad搜索一个包含大量蛋白质配置文件的大数据库,这些配置文件在内存中占用大量空间。为了防止因内存不足而执行失败,我们可以使用--splits参数将搜索分割成块。如果您在一个大服务器上运行geNomad,可能不需要分割您的搜索,这样可以提高执行速度。
  • 请注意,我作为输入使用的FASTA文件是压缩的。这是因为geNomad支持压缩为.gz.bz2.xz的输入文件。

注意 默认情况下,geNomad应用一系列后分类过滤器以删除可能的假阳性。例如,序列需要至少有0.7的质粒或病毒分数,并且长度小于2,500 bp的序列需要至少编码一个标志基因。如果您想禁用后分类过滤器,请将--relaxed标志添加到您的命令中。另一方面,如果您想对分类非常保守,请使用--conservative标志。这将使后分类过滤器更激进,防止没有强烈支持的序列被分类为质粒或病毒。您可以在此处检查默认、宽松和保守的后分类过滤器。

理解输出

在本例中,geNomad分析的结果将写入genomad_output目录,如下所示

genomad_output
├── GCF_009025895.1_aggregated_classification
├── GCF_009025895.1_aggregated_classification.log
├── GCF_009025895.1_annotate
├── GCF_009025895.1_annotate.log
├── GCF_009025895.1_find_proviruses
├── GCF_009025895.1_find_proviruses.log
├── GCF_009025895.1_marker_classification
├── GCF_009025895.1_marker_classification.log
├── GCF_009025895.1_nn_classification
├── GCF_009025895.1_nn_classification.log
├── GCF_009025895.1_summary
╰── GCF_009025895.1_summary.log

如上所述,geNomad通过依次执行几个模块来工作。每一个都会生成一个日志文件(<prefix>_<module>.log)和一个子目录(<prefix>_<module>)。

对于这个例子,我们只看GCF_009025895.1_summary目录内的文件。该<prefix>_summary目录包含在整个管道中生成的结果的总结文件。如果您只想查看输入中识别的质粒和病毒列表,这就是您要找的。

genomad_output
╰── GCF_009025895.1_summary
    ├── GCF_009025895.1_plasmid.fna
    ├── GCF_009025895.1_plasmid_genes.tsv
    ├── GCF_009025895.1_plasmid_proteins.faa
    ├── GCF_009025895.1_plasmid_summary.tsv
    ├── GCF_009025895.1_summary.json
    ├── GCF_009025895.1_virus.fna
    ├── GCF_009025895.1_virus_genes.tsv
    ├── GCF_009025895.1_virus_proteins.faa
    ╰── GCF_009025895.1_virus_summary.tsv

首先,让我们看看GCF_009025895.1_virus_summary.tsv

seq_name                                 length   topology              coordinates       n_genes   genetic_code   virus_score   fdr   n_hallmarks   marker_enrichment   taxonomy
--------------------------------------   ------   -------------------   ---------------   -------   ------------   -----------   ---   -----------   -----------------   -----------------------------------------------------------------
NZ_CP045015.1|provirus_2885510_2934610   49101    Provirus              2885510-2934610   69        11             0.9776        NA    14            76.0892             Viruses;Duplodnaviria;Heunggongvirae;Uroviricota;Caudoviricetes;;
NZ_CP045015.1|provirus_3855947_3906705   50759    Provirus              3855947-3906705   79        11             0.9774        NA    16            75.1552             Viruses;Duplodnaviria;Heunggongvirae;Uroviricota;Caudoviricetes;;
NZ_CP045018.1                            51887    No terminal repeats   NA                57        11             0.9774        NA    14            67.7749             Viruses;Duplodnaviria;Heunggongvirae;Uroviricota;Caudoviricetes;;
…

这个表格文件列出了geNomad在您的输入中找到的所有病毒,并提供了关于它们的方便信息。以下是每列包含的内容

  • seq_name:输入FASTA文件中序列的标识符。前病毒将遵循以下命名方案:<序列标识符>|provirus_<起始坐标>_<终止坐标>
  • length:序列长度(或整合病毒的病毒,在这种情况下为前病毒)。
  • topology:病毒序列的拓扑结构。可能的值为:无终端重复DTR(直接终端重复)、ITR(反转终端重复)或前病毒(整合到宿主基因组中的病毒)。
  • coordinates:宿主序列中前病毒区域的一索引坐标。对于未被预测为整合的病毒将是NA
  • n_genes:编码在序列中的基因数量。
  • genetic_code:预测的遗传密码。可能的值为:11(细菌和古菌的标准密码子)、4(重编码TGA终止密码子)或15(重编码TAG终止密码子)。
  • virus_score:geNomad对序列是病毒的置信度的一个度量。得分接近1.0的序列比得分较低的序列更有可能是病毒。
  • fdr:分类估计的假发现率(FDR)(即,直到这一行为止的序列中预期的假阳性比例)。要估计FDR,geNomad需要得分校准,默认情况下是关闭的。因此,在这个示例中,此列将只包含NA值。
  • n_hallmarks:匹配geNomad标志的基因数量。标志是与病毒功能相关联的基因,它们的存在强烈表明序列确实是病毒。
  • marker_enrichment:表示病毒标志在序列中总富集程度的得分。随着病毒标志在序列中数量的增加,该值增加,因此具有多个标志的序列得分更高。染色体和质粒标志会降低得分。
  • taxonomy:病毒基因组的分类分配。谱系遵循ICTV的VMR编号19中的分类。病毒可以分类到家族水平,但不能分类到该家族中的特定属或种。分类以固定数量的字段(对应于分类等级)表示,字段之间用分号分隔,空字段留空。

在我们的示例中,geNomad识别了几个整合到K. pneumoniae基因组的质粒和一种外染色体噬菌体。由于它们都具有高得分和标志富集,我们可以有信心这些确实是病毒。它们都被预测使用遗传密码子11,并被分配到Caudoviricetes类,该类包含所有的尾噬菌体。在这些病毒的taxonomy字段中,在Caudoviricetes之后有两个连续的分号,因为geNomad只能将它们分配到类级别,留下序和家族等级为空。

另一个重要的文件是GCF_009025895.1_virus_genes.tsv。在其执行过程中,geNomad使用染色体、质粒和病毒特异性标志的数据库来注释输入序列中编码的基因。<prefix>_virus_genes.tsv文件总结了已识别病毒编码基因的注释。

gene              start   end     length   strand   gc_content   genetic_code   rbs_motif     marker              evalue       bitscore   uscg   plasmid_hallmark   virus_hallmark   taxid   taxname          annotation_conjscan   annotation_amr   annotation_accessions              annotation_description
---------------   -----   -----   ------   ------   ----------   ------------   -----------   -----------------   ----------   --------   ----   ----------------   --------------   -----   --------------   -------------------   --------------   --------------------------------   --------------------------------------------------------------------------------------
NZ_CP045018.1_1   1       399     399      1        0.536        11             None          GENOMAD.108715.VP   2.536e-32    123        0      0                  1                2561    Caudoviricetes   NA                    NA               PF05100;COG4672;TIGR01600          Phage minor tail protein L
NZ_CP045018.1_2   401     1111    711      1        0.568        11             AGGAG         GENOMAD.168265.VP   9.279e-47    170        0      0                  0                2561    Caudoviricetes   NA                    NA               PF14464;COG1310;K21140;TIGR02256   Proteasome lid subunit RPN8/RPN11, contains Jab1/MPN domain metalloenzyme (JAMM) motif
NZ_CP045018.1_3   1143    1493    351      1        0.382        11             AGGAG         GENOMAD.147875.VV   1.495e-14    71         0      0                  0                2561    Caudoviricetes   NA                    NA               COG5633;TIGR03066                  NA
NZ_CP045018.1_4   1509    2120    612      1        0.477        11             GGA/GAG/AGG   GENOMAD.143103.VP   1.958e-50    179        0      0                  1                2561    Caudoviricetes   NA                    NA               PF06805;COG4723;TIGR01687          Phage-related protein, tail component
NZ_CP045018.1_5   2183    13516   11334    1        0.566        11             None          GENOMAD.159864.VP   1.225e-268   923        0      0                  0                2561    Caudoviricetes   NA                    NA               PF12421;PF09327                    Fibronectin type III protein
NZ_CP045018.1_6   13585   15084   1500     1        0.550        11             AGGAG         GENOMAD.195756.VP   2.017e-14    79         0      0                  0                2561    Caudoviricetes   NA                    NA               NA                                 NA
NZ_CP045018.1_7   15163   16128   966      -1       0.469        11             GGAGG         NA                  NA           NA         0      0                  0                1       NA               NA                    NA               NA                                 NA
…

此文件中的列包括

  • gene:基因的标识符(<序列名称>_<基因编号>)。通常,基因编号从1开始(序列中的第一个基因)。然而,整合到宿主染色体中部的噬菌体编码的基因可能从不同的数字开始,这取决于它在染色体中的位置。
  • start:基因的一索引起始坐标。
  • end:基因的一索引终止坐标。
  • length:基因位点长度(以碱基对计)。
  • strand:编码基因的链。可以是1(直接链)或-1(反向链)。
  • gc_content:基因位点的GC含量。
  • genetic_code:预测的遗传密码(请参见总结文件说明中的详细信息)。
  • rbs_motif:检测到的核糖体结合位点模式。
  • marker:最佳匹配geNomad标记。如果该基因不匹配任何标记,则值将为NA
  • evalue:基因编码的蛋白质与最佳匹配geNomad标记之间的比对E值。
  • bitscore:基因编码的蛋白质与最佳匹配geNomad标记之间的比对bitscore。
  • uscg:分配给该基因的标记是否对应于通用单拷贝基因(UCSG,如BUSCO v5中定义)。这些基因预期存在于染色体中,在质粒和病毒中很少见。可以是1(基因是UCSG)或0(基因不是UCSG)。
  • plasmid_hallmark:分配给该基因的标记是否代表质粒标志。
  • virus_hallmark:分配给该基因的标记是否代表病毒标志。
  • taxid:分配给该基因的标记的税onom识别符(您可以忽略此信息,因为它旨在由geNomad内部使用)。
  • taxname:与分配的geNomad标记相关的分类群名称。在这个例子中,我们可以看到注释的蛋白质都是Caudoviricetes的特征(这就是为什么前病毒被分配给这个类)。
  • annotation_conjscan:如果匹配基因的标记是交配相关的基因(如CONJscan中定义),则此字段将显示分配给标记的CONJscan访问号。
  • annotation_amr:如果匹配基因的标记注释了抗菌素抗性(AMR)功能(如NCBIfam-AMRFinder中定义),则此字段将显示分配给标记的NCBIfam访问号。
  • annotation_accessions:一些geNomad标记具有功能注释。此列告诉您Pfam、TIGRFAM、COG和KEGG中哪些条目被分配给了标记。
  • annotation_description:描述分配给标记的功能的文本。

在上面的例子中,我们可以看到编码在NZ_CP045018.1中的前七个基因的信息。最后一条记录没有匹配任何geNomad标记。前六条都被分配给了蛋白质家族,其中一些是尾部噬菌体的典型特征(如尾部蛋白),这让我们确信这些确实是Caudoviricetes

这里的一个重要细节是geNomad标记的主要目的是分类。它们被设计成针对染色体、质粒或病毒,以便区分属于这些类别的序列。因此,您不应该期望每个单个病毒基因都会被注释为geNomad标记。如果您希望尽可能彻底地注释您序列中的基因,您应该使用如PfamCOG之类的数据库。

在摘要目录中,与病毒相关的其他两个文件是GCF_009025895.1_virus.fnaGCF_009025895.1_virus_proteins.faa。这些分别是已识别病毒序列及其蛋白质的FASTA文件。前病毒自动从宿主序列中切除。

接下来是质粒,有关其鉴定的数据可以在<prefix>_plasmid_summary.tsv<prefix>_genes.tsv<prefix>_plasmid.fna<prefix>_plasmid_proteins.faa文件中找到。这些文件与病毒类似。在<prefix>_plasmid_summary.tsv(如下所示)中的差异如下

  • <prefix>_virus_summary.tsv中存在的病毒特定列(coordinatestaxonomy)不存在。
  • 《conjugation_genes》列列出了可能参与接合的基因。需要注意的是,存在这样的基因并不足以判断一个特定的质粒是否具有接合性或可动性。如果您有兴趣识别接合性质粒,我们建议您使用geNomad和CONJscan分析您所确定的质粒。
  • 《amr_genes》列列出了具有抗菌耐药性功能的基因。您可以在AMRFinderPlus网站上查看每个登录号的具体功能。
seq_name        length   topology              n_genes   genetic_code   plasmid_score   fdr   n_hallmarks   marker_enrichment   conjugation_genes                                                                                       amr_genes
-------------   ------   -------------------   -------   ------------   -------------   ---   -----------   -----------------   -----------------------------------------------------------------------------------------------------   -----------------------------------
NZ_CP045020.1   28729    No terminal repeats   36        11             0.9955          NA    7             25.8098             F_traE                                                                                                  NA
NZ_CP045022.1   50635    No terminal repeats   61        11             0.9947          NA    9             46.4657             T_virB1;T_virB3;virb4;T_virB5;T_virB6;T_virB8;T_virB9                                                   NA
NZ_CP045019.1   44850    No terminal repeats   52        11             0.9945          NA    3             28.7110             F_traE                                                                                                  NA
NZ_CP045016.1   82240    No terminal repeats   110       11             0.9939          NA    11            33.4021             T_virB8;T_virB9;F_traF;F_traH;F_traG;T_virB1                                                            NF000225;NF000270;NF012171;NF000052
NZ_CP045017.1   61331    No terminal repeats   76        11             0.9934          NA    16            36.2817             I_trbB;I_trbA;MOBP1;I_traI;I_traK;I_traL;I_traN;I_traO;I_traP;I_traQ;I_traR;traU;I_traW;I_traY;F_traE   NA
NZ_CP045021.1   5251     No terminal repeats   7         11             0.9910          NA    1             1.4225              NA                                                                                                      NA

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

genomad-1.8.0.tar.gz (28.3 MB 查看哈希值)

上传时间

构建分发

genomad-1.8.0-py3-none-any.whl (53.2 MB 查看哈希值)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面