Skip to main content

噬菌体工具的发现和提取

项目描述

噬菌体检测和提取工具 (DEPhT)

DEPhT 是一种用于识别细菌中的前噬菌体的新工具,其开发目的是能够快速扫描数百到数千个基因组并准确地从中提取完整的(可能是活性的)前噬菌体。

简而言之,DEPhT 通过使用基因组结构(而不​​是同源性)来识别可能包含噬菌体的基因组区域。然后使用两遍同源性检测进一步检查具有噬菌体样结构的任何区域(特征为具有高基因密度和很少转录方向变化的区域)。第一遍识别假定的原噬菌体上的基因,这些基因是(种/进化枝/属级)保守细菌基因的同源物,并使用任何此类基因来破坏原噬菌体预测。第二遍(在“快速”运行模式下禁用)识别假定的原噬菌体上的基因,这些基因是保守的、功能注释的噬菌体基因的同源物。最后,

请引用

Gauthier CH、Abad L、Venbakkam AK、Malnak J、Russell DA、Hatfull GF。DEPhT:一种高效的噬菌体发现和精确提取的新方法。核酸研究,第 50 卷,第 13 期,2022 年 7 月 22 日,第 e75 页,doi:10.1093/nar/gkac273。PMID:35451479。

安装

DEPhT 在 macOS 和 Linux 操作系统上原生运行,理论上应该可以在使用 WSL的 Windows 上运行。

康达安装

DEPhT 有几个依赖项,因此到目前为止最简单的安装方法是使用 Anaconda或轻量级 Miniconda和这个单一命令:

conda create -n depht -c laa89 -c bioconda -c conda-forge depht -y

最多可能需要几分钟才能完成。

手动安装

对于希望管理自己的依赖项的用户,您需要安装以下各项:

设置

DEPhT 需要至少安装一个特定于属的模型才能运行。目前,我们在开放科学框架的存储库中提供了一些模型。也可以在本地训练新模型(说明如下)。

下载模型后(最简单的方法是通过 Web 浏览器),需要将其解压缩并移动到 DEPhT 的目录中。例如,如果您下载了分枝杆菌模型:

if ! [[ -d ~/.depht/models ]]; then
    mkdir -p ~/.depht/models
fi

unzip ~/Downloads/Mycobacterium.zip -d ~/.depht/models/

默认情况下,使用训练的模型depht_train将放在此目录中。我们通常愿意为构建新模型提供指导或帮助——实现这一点的最简单方法是创建问题。请注意,根据 Gauthier 等人的图 8。al 2022,某些属可能比其他属更适合创建 DEPhT 模型。

运行深度

基本

安装和设置后,检查是否可以在命令行上运行 DEPhT。注意:如果您使用 conda 安装,您需要先激活您的环境(例如conda activate depht)。在命令行键入depht应该显示类似于以下内容(可用的 CPU 数量和型号会有所不同):

usage: depht [-h] [--model] [-c] [-n] [-m {fast,normal,strict}] [-s] [-d] [-v] [-t] [-p] [-l]
             infile [infile ...] outdir

DEPhT scans bacterial genomes looking for prophages. Regions identified as prophage 
candidates are further scrutinized, and attachment sites identified as accurately as 
possible before prophage extraction and generating the final report.

optional arguments:
  -h, --help            show this help message and exit
  --model {Mycobacterium}
                        which local model should be used [default: Mycobacterium]
  -c , --cpus           number of CPU cores to use [default: 4]
  -n, --no-draw         don't draw genome diagram for identified prophage(s)
  -m {fast,normal,sensitive}, --mode {fast,normal,sensitive}
                        select a runmode that favors speed or accuracy
  -s , --att_sens       sensitivity parameter for att site detection.
  -d, --dump-data       dump all support data to outdir
  -v, --verbose         print progress messages as the program runs
  -t , --tmp-dir        temporary directory to use for file I/O [default: ~/.depht/tmp]
  -p , --products       minimum number of phage homologs to report a prophage
  -l , --length         select a minimum length for prophages [default: 20000]

为了运行 DEPhT,您需要提供两个参数:

  1. FASTA 或 Genbank 平面文件格式的一个或多个基因组序列
  2. 所需的输出目录

DEPhT 将在解析文件时推断输入文件类型,而不是使用文件扩展名。据我们所知,这使得 DEPhT 在前噬菌体检测工具中有些不同寻常,因为在一次运行中,您可以提供一组具有多种文件格式的文件。FASTA 文件将被视为未注释,从这些输入文件解析的序列将在前噬菌体检测之前自动注释。Genbank 平面文件将被视为带注释的基因组,因此将绕过自动注释步骤,运行速度比 FASTA 快约 20-30 秒。

像这样在单个 FASTA 文件上运行 DEPhT(使用您自己的文件路径/扩展名):

depht /path/to/my/sequence.fasta /path/to/my/output/directory

在 FASTA 文件的目录上运行 DEPhT,如下所示:

depht /path/to/my/directory/*.fasta /path/to/my/output/directory

可以像这样运行大量混合 FASTA(此处使用 .fasta 扩展名)和 Genbank(此处使用 .gbk 扩展名)平面文件:

depht /path/to/my/directory/*.fasta /path/to/my/directory/*.gbk /path/to/my/output/directory

理论上,您仅受终端允许您使用*.

对于不习惯在命令行输入路径的 Mac 用户,现代版本的 macOS 允许您将文件从 Finder 窗口拖到终端中,并会自动为您在终端中填充路径。一些 Linux 发行版也可能支持这种操作。

如果发现了一个前噬菌体区域,或者如果-d指定了参数,DEPhT 将为每个输入序列在指定的输出目录中创建一个目录。对于那些预测出原噬菌体的序列,DEPhT 将编写一个 .html 文件,其中包含已发现的原噬菌体区域的可视化。它还将为每个提取的原噬菌体序列输出一个 FASTA(序列)文件和一个 Genbank(注释)文件。有关更多详细信息,请参见 下文DEPhT 的输出文件。

DEPhT 运行时的进度更新可以用-v.

depht /path/to/my/sequence.fasta /path/to/my/output/directory -v

默认情况下,DEPhT 将使用所有本地可用的 CPU 内核。-c您可以使用/--cpus参数限制允许的 CPU 内核数 :

depht /path/to/my/sequence.fasta /path/to/my/output/directory -c 4

其他选项

下面是对 DEPhT 可选参数的描述。这些是单独描述的,但可以使用不同的值进行混合和匹配,以专门调整 DEPhT 的行为以满足您的需求。默认参数均设置为优化分枝杆菌基因组的性能。

型号选择

DEPhT 最初是为精确有效地发现和提取分枝杆菌前体而设计的,但可以适用于带有--model标志的其他属。有关下载我们已经训练过的模型的说明,请参见上文,并在下方查看当前可用模型的列表。

如果您在本地安装了多个模型,则需要告诉 DEPhT 您想使用哪个模型。否则,它会或多或少地随机选择一个,这可能会导致意外的低质量输出。

depht /path/to/my/sequence.fasta /path/to/my/output/directory --model Pseudomonas

运行模式选择

DEPhT 有多种运行模式,旨在作为调整运行时间和准确性之间权衡的刻度盘。该-m 参数允许您选择一种可用的运行模式:

  • 快速:DEPhT 使用基因大小和转录方向变化尽快发现前噬菌体区域。使用选定属的已识别壳基因组内容修剪区域,并努力识别 attL/attR,但可能不如其他运行模式准确。
  • 正常:DEPhT 以快速模式发现前噬菌体区域,然后尝试通过识别对生存能力至关重要的噬菌体基因的同源物来区分活跃的和有缺陷的前噬菌体。
  • 敏感:DEPhT 像在正常模式下一样发现前噬菌体区域,然后尝试通过识别具有一致注释功能的噬菌体基因的同源物来进一步区分活性和有缺陷的前噬菌体。

默认情况下,DEPhT 将在正常模式下运行(例如,如果-m没有给出),但如果有人有兴趣尽快估算出 prophages 的数量,他们可以像这样运行 DEPhT:

depht /path/to/my/sequence.fasta /path/to/my/output/directory -m fast

或者,如果一个人只想要最有可能的 prophages,并带有尽可能多的详细功能注释,它们可能会运行:

depht /path/to/my/sequence.fasta /path/to/my/output/directory -m sensitive

产品门槛

在正常和敏感的运行模式中,DEPhT 试图根据一个区域中已识别的前噬菌体同源物的数量来区分活跃的和有缺陷的前噬菌体。这个数量的噬菌体产物可以通过使用-p参数来增加或减少。在普通模式下,默认值为 5;在敏感模式下,它是 10。如果觉得默认值太高而宁愿使用 2,例如,可以通过运行:

depht /path/to/my/sequence.fasta /path/to/my/output/directory -p 2

附件站点调整

DEPhT 采用多特征评分算法和参考序列库来确定可能的最佳附着位点核心(或者如果没有合适的序列)。该组件的运行时间受到 BLASTN 算法运行时间的严重影响,因此运行时间随搜索的序列数量而变化。然而,提取的精度可能受益于搜索更大的序列空间,特别是在很少有高质量参考序列可用的属中。搜索连接位点核心的序列空间可以通过使用该-s标志来控制,该标志充当针对 5000 bp 的乘数。默认情况下,DEPhT 使用-s 7,这对应于每个已识别的前噬菌体左右两端最多 7 x 5,000 = 35,000 bp 的搜索空间。通过设置-s为 10 可以将其提高到 50,000 bp,但会牺牲一些额外的运行时间:

depht /path/to/my/sequence.fasta /path/to/my/output/directory -s 10

噬菌体大小

DEPhT 规定了为保证输出质量而报告的噬菌体区域的最小长度。这个最小长度阈值可以通过-l标志降低或提高,默认设置为 20,000 个碱基对 - 刚好超过已知最短分枝杆菌原噬菌体长度的一半。将此阈值降低到 10,000 个碱基,如下所示:

depht /path/to/my/sequence.fasta /path/to/my/output/directory -l 10000

临时目录

DEPhT(及其依赖项)使用许多临时数据文件。这些文件存储在一个临时目录中,并在 DEPhT 完成运行后删除。默认情况下,DEPhT 将使用~/.depht/tmp,但可以使用您的用户帐户具有读/写权限的任何其他目录,方法是使用以下-t参数:

depht /path/to/my/sequence.fasta /path/to/my/output/directory -t /path/to/temporary/directory

输出

DEPhT 的输出由三个主要文件组成:

  1. .html具有已发现原噬菌体区域可视化的文件
  2. .csv包含用于辨别噬菌体区域的主要数据的电子表格 - 每个重叠群一个文件
  3. .gbk带有 DEPhT 输入序列注释的 Genbank 平面文件 - 每个重叠群一个文件

DEPhT 的图形输出使用DnaFeaturesViewer.html显示圆形输入基因组图和线性噬菌体区域基因 组图,以及在带有pretty-html-table的彩色表中发现的区域的坐标。

![DEPhT 的脓肿分枝杆菌GD43A 菌株中鉴定的前噬菌体的图形输出] (/resources/images/result_visualization_example.png)

在这些基因组图谱和坐标表中的每一个中,前噬菌体和/或蛋白质编码序列特征用绿色表示正向特征,红色表示反向特征。在圆形基因组图谱中的这些前噬菌体特征上方标注了由 DEPhT 给出的前噬菌体区域名称。在线性基因组图谱中的那些蛋白质编码特征之上是由 DEPhT 鉴定的注释噬菌体产物。

DEPhT 的数据.csv输出包含输入序列文件中每个蛋白质编码特征的数据。

![DEPhT 在脓肿分枝杆菌菌株 GD43A中鉴定的前噬菌体的数据输出] (/resources/images/data_spreadsheet_example.png)

此输出中的列如下:

  • 基因 ID:由 DEPhT 分配的蛋白质编码特征 ID
  • 开始:输入序列中特征的起始坐标
  • End:输入序列中特征的结束坐标
  • 预测:该基因是噬菌体一部分的概率,来自基因大小/TDC 分类器
  • 细菌同源性:如果 DEPhT 将该基因识别为细菌辅助基因组的一部分,则为 1,否则为 0
  • 噬菌体同源性:具有高置信度的基因命中噬菌体 HMM 的 HHSearch 概率,否则为 0

训练新模型

depht_train可以使用作为 DEPhT 的一部分安装的软件包来训练模型。

下面将描述训练新模型的工作流程,并解释思考过程。

训练基因组的选择

这是迄今为止训练新模型的最高障碍。选择的训练基因组越好,模型的性能就越好。我们强烈建议仅针对完全测序的细菌和手动注释的噬菌体进行训练。

在训练模型时,您需要做出一个重要的权衡:数据量与数据质量。如果基因组选择得当,特别是如果噬菌体基因组经过良好注释,则相对较小的数据集(约 100 个噬菌体和 30-45 个细菌)可以产生令人难以置信的高质量模型。假设所有训练数据都是高质量的,增加训练数据量可能会提高 DEPhT 的预测质量,但需要注意的是,更大的模型必然会增加 DEPhT 运行时间,这在快速运行模式下最为明显。

好的,假设您想为分枝杆菌训练一个新模型。一个好的开始是前往 PATRIC并导航到分枝杆菌科。

检索细菌基因组

在分类树中,到达这里的步骤是:

Terrabacteria group >> Actinobacteria >> Actinomycetia >> Corynebacteriales >> Mycobacteriaceae

下面的红色框显示了单击何处可以访问感兴趣的家庭或属的主页。

父分枝杆菌科

从那里,导航到“基因组”选项卡以查看所选分类单元中的所有可用基因组。单击“过滤器”,一个不错的选择可能是仅选择“基因组状态”为“完整”、“参考基因组”为“代表性”或“参考”且“基因组质量”为“良好”的基因组. 点击“应用”以应用这些过滤器。您可以通过选择表中的所有基因组并单击“DWNLD”按钮来下载这些基因组的 FASTA 文件。

帕特里克下载

单击“更多选项”,在弹出的对话框中,选中“FASTA 中的基因组序列 (*.fna)”旁边的框,然后单击“下载”。

帕特里克对话框

当然,您可以自由添加任何您想要更好地填充该属的多样性谱的额外基因组。在我们的案例中,我们添加了几个脓肿分枝杆菌菌株来填充所谓的脓肿分枝杆菌复合体 (MAC)。

检查细菌的噬菌体

理想情况下,您将通过 PHASTER 或其他一些前噬菌体预测工具运行这些基因组,以获取这些菌株中任何完整前噬菌体的大致坐标,并将它们记录在您将传递给训练模块的 CSV 文件中。坐标不必是完美的,尽管它们越好,结果模型的性能就越好。此步骤将使模型了解集成的前噬菌体在架构上应该是什么样子,而不是只知道提取的噬菌体/前噬菌体是什么样子。

示例 csv

检索噬菌体基因组

最后,您需要从 Genbank 或其他地方检索功能注释的噬菌体。像细菌一样,重要的是这些噬菌体代表了感染该属宿主的噬菌体的多样性谱。理想情况下,该数据集中至少会有一些相关的噬菌体组。噬菌体注释需要采用 GenBank 平面文件格式。

运行训练管道

DEPhT 模型由四个主要部分组成,它们可以由精选的噬菌体和细菌序列构建。在depht_train包中,存在几个管道来转换和处理序列数据,并将这些数据存储在 DEPhT 识别的格式化文件和数据库中。整个工作流程如下图所示。

深度训练工作流程

此培训工作流程在depht_train包中作为单个管道提供。唯一需要的参数是:

  1. 新模型的名称
  2. 包含感兴趣属的功能注释噬菌体基因组的目录的路径(GenBank 平面文件)
  3. 包含感兴趣属的细菌基因组的目录的路径(FASTA 核苷酸或 GenBank 平面文件)

像这样运行管道:

depht_train create_model model_name /path/to/annotated/phage/genomes /path/to/bacterial/genomes

如果您尝试创建与现有模型同名的新模型depht_train,默认情况下不会覆盖现有模型,但会强制您选择一个新名称。如果您想覆盖现有模型,可以使用-f/--force参数:

depht_train create_model model_name /path/to/annotated/phage/genomes /path/to/bacterial/genomes -f

如果您的一个或多个细菌基因组中包含一个或多个已知(或可能的)噬菌体,您可以使用以下参数提供格式如上的 CSV 文件:--prophage-coords

depht_train create_model model_name /path/to/annotated/phage/genomes /path/to/bacterial/genomes --prophage-coords /path/to/prophage_coords.csv

当对用于创建 DEPhT 模型的一组细菌的分类学了解很多时,分配给细菌的正式进化枝或分类群可能比自动生成的集群模式更具信息性和生物学相关性。为了定义外壳基因组内容的目的,要在输入的细菌序列上断言某个进化枝/集群模式,您可以创建一个 CSV 表,将给定的细菌映射到进化枝名称或标识符。该表应使用“名称”和“集群”标题进行格式化,如下所示:

细菌簇表示例

可以使用以下参数将此 CSV 文件提供给create_model管道:--bacteria-clusters

depht_train create_model model_name /path/to/annotated/phage/genomes /path/to/bacterial/genomes 
--bacteria-clusters /path/to/bacteria_clusters.csv

训练一个模型由几个计算成本高昂的步骤组成,因此训练一个模型所花费的时间是高度可变的,但通常会受到以下方面的影响:

  1. 更多基因组 --> 更长的训练时间(以及可能的depht运行时间)
  2. 更多 CPU 内核 --> 更短的训练时间(以及可能的depht运行时间)

大多数新模型可能需要 15 分钟到一个小时的时间来训练。

例子

我们有一些示例基因组和预期输出,以便最终用户轻松验证 DEPhT(和分枝杆菌模型)是否安装正确。这些基因组及其预期输出可以在 GitHub 存储库的资源 > 示例中找到。

一般信息

项目详情


下载文件

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

源分布

depht-1.1.8.tar.gz (99.9 kB 查看哈希)

已上传 source

内置分布

depht-1.1.8-py3-none-any.whl (112.7 kB 查看哈希)

已上传 py3