方法文章

基于信息流建模的转录组数据构建情境特异性蛋白质相互作用网络的NetDecoder实验方案

DOI:

10.3791/70869

2026年7月31日

本文内容

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本文介绍了一种利用网络建模工具NetDecoder构建特定上下文的蛋白质相互作用网络并建立基因效用模型(GUMs)的实验方案。通过整合转录组学数据与经过人工审编的蛋白质-蛋白质相互作用(PPI)网络,NetDecoder能够识别关键靶点和子网络。

摘要

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

差异表达分析是一种常用于确定潜在治疗靶点的技术,但它忽略了生物通路中基因网络的复杂性。通常,高表达的基因并不一定能够解释生物表型的特性。为解决差异表达分析的这一局限性,开发了NetDecoder这一网络生物学工具,该工具将转录组数据与蛋白质-蛋白质相互作用(PPI)网络相结合,用于建模特定生物学背景下的信息流、基因功能重要性以及关键连接边和差异利用的基因网络。

本方案为初学者提供了一个循序渐进使用 NetDecoder 的详细指南,涵盖数据预处理、NetDecoder 执行及输出结果分析的完整流程。该工作流程包括软件配置、网络构建以及基于流的建模分析,用于量化不同生物条件下基因(节点)及基因-基因相互作用(边水平)的差异。最终输出结果包括关键靶点和路由基因、差异流子网络以及边流分布情况,有助于识别与特定生物状态相关的关键调控基因和通路。在完成所述步骤后,研究人员将能够利用转录组数据和 curated PPI 网络独立开展研究,揭示跨表型的表型基因流动特征。

引言

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

用于治疗研究的基因及其相关通路的选择通常由差异表达分析驱动1。该分析方法在确定两个或多个条件下基因表达的差异方面具有较高有效性。然而,基因在复杂且相互关联的生物网络中发挥作用,这意味着单个基因的表达并不能充分反映基因在网络中的相互作用及其基因-基因关系2。网络传播方法将基因表达数据与相互作用网络相结合,以识别仅通过差异表达分析可能遗漏的具有重要生物学意义的基因3。目前的方法并未明确量化基因的功能重要性,以及在不同生物学条件下生物信息在蛋白质-蛋白质相互作用(PPI)网络中的重新分布情况。因此,亟需一种能够建模特定条件下网络行为并量化跨生物系统信息流变化的方法。为了系统性地考虑基因在更广泛的生物网络中的相互作用,研究人员开发了NetDecoder这一网络生物学平台,用于识别在不同条件之间具有最大信息流差异的基因。NetDecoder采用一种过程引导的流算法,整合人类PPI网络的已有知识与批量RNA测序数据,构建基于信息流驱动的相互作用模型4

利用表型网络的信息流数据,可构建基因效用模型(GUM)5,以识别在网络中信息流最高的基因,这些基因具有最高的整体基因效用,而无需考虑其差异表达水平。该方法支持更有效的靶点优先排序策略与识别,能够提供传统分析方法常忽略的生物学洞见。与传统的差异表达分析或基于相关性的网络方法不同,NetDecoder 可量化基因(节点水平)和相互作用(边水平)在信息流上的变化,从而识别功能上重要的基因,即使其表达水平未发生显著改变4,5。NetDecoder 可广泛应用于涉及两种生物学条件之间比较的批量 RNA 测序数据集,用于识别信息流和网络结构的变化。尽管 NetDecoder 支持整合其他组学数据集(如蛋白质组学和表观基因组学),本实验方案重点以转录组数据为例演示其工作流程。在这些应用中,用户可根据蛋白质或表观遗传调控的基因定义源基因,从而从这些分子特征启动信息流分析。这种灵活性使得多组学证据可被整合到基于网络的分析中,有助于揭示表型差异背后的跨模态调控机制。

常见的研究设计包括二元比较,涵盖但不限于疾病与健康状态、治疗应答者与非应答者、药物处理、基因敲低或敲除与对照实验之间的比较,以及发育过程或细胞状态转变的分析。本实验方案旨在展示一个可重复的框架,用于应用 NetDecoder 来揭示在不同生物学条件下网络影响力发生改变的基因。本方案提供了易于遵循的步骤,指导 NetDecoder 的设置与运行,同时包含示例以辅助操作,并介绍了基本的故障排除技术以及结果解读方法。

方案

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本研究使用了公开可用的RNA测序数据集,未直接涉及人类或动物受试者,因此无需机构审查委员会批准和知情同意。

注意:NetDecoder 需要以下输入文件:两种特定生物条件下标准化的基因表达数据;描述生物条件的元数据文件;用于网络构建和建模的源基因列表;来自公共领域的蛋白质-蛋白质相互作用(PPI)网络;以及为每种生物条件构建的边加权网络(EWN)。

1. 数据准备

  1. 获取批量 RNA 测序表达数据和元数据
    1. 从公共数据库(例如基因表达综合数据库 Gene Expression Omnibus, GEO)下载 RNA 测序数据(原始基因表达计数矩阵及样本名称)以及相应的元数据(样本名称、实验条件等),或使用实验室自产的实验数据集。通常,该数据矩阵的行对应基因名称,列对应样本名称。
      注:本方案示例所用数据集来自国家组学数据百科全书(NODE)数据库(BioSino 数据库),编号 OEP0011056。用户可替换为自有的批量 RNA 测序数据集。
    2. 通过包含样本名称及其分组或相关条件(例如“对照”和“疾病”)生成样本注释文件(元数据)。确认元数据文件与表达数据文件中的样本名称一致。
  2. 整合表达数据与元数据
    1. 确保生成的数据矩阵包含表达计数、基因名称,以及包含样本名称和实验条件的元数据文件。如有需要,可使用 R 软件包(如 org.Hs.eg.db(人类)或 AnnotationDbi)匹配不同的基因标识符。
    2. 使用 R 或类似编程语言修剪元数据文件中的非必要信息。
    3. 将表达计数文件中的信息合并为单个文件,以便于后续操作。
  3. 过滤表达数据
    1. 对基因表达数据矩阵进行预处理,排除基因重复项、空值(NA)、低表达(<10 总计数)和/或低方差基因等。
  4. 数据预处理
    1. RNA 测序数据归一化与差异表达分析
      注:此步骤是基于批量 RNA 测序数据开始分析时,用于构建边加权网络(EWN)及选择源基因(步骤 1.5–1.6)的两种方法中的第一种(1.4.1)。作为替代方案,可跳至步骤 1.4.3,采用基于皮尔逊相关性的模板匹配方法。
      1. 在此阶段使用 R 软件包 AnnotationDbi 及针对特定生物体的配套软件包进行基因 ID 转换。NetDecoder 使用与示例 PPI 匹配的基因符号(即 Gene ID)。
      2. 使用 R 软件包 limma、edgeR、DESeq2 或类似工具,在两种实验条件之间进行数据归一化和差异表达分析。
      3. 若使用 DESeq2,需使用 DESeqDataSetFromMatrix() 函数构建 DESeq 数据集,输入为计数矩阵(基因与样本)和样本元数据(实验条件)。
      4. 对步骤 1.4.1.3 中创建的对象使用 DESeq() 函数并采用默认设置,以计算差异表达值。
      5. 将结果保存为数据矩阵,其中行名为基因标识符(Gene ID),列为关键输出项,包括 log2 倍数变化(log2FC)、p 值和校正后 p 值。
      6. 可选:使用 dplyr 或类似工具,根据校正后 p 值(<0.05)和/或 log2FC 值(例如:|log2FC| > 1)对结果进行筛选。
      7. 确保所有处理后的基因列表和 log2 倍数变化矩阵均导出为制表符分隔的(.txt 或 .csv)文件,以便输入 NetDecoder。
      8. 若使用超过两种生物学条件,需在步骤 1.4.1 中执行成对比较,并使用步骤 1.4.1.5 中生成的 DESeq 对象的 results() 函数获取成对比较结果。
    2. 微阵列表达数据归一化 — 可选
      注:若使用微阵列数据,请执行此步骤进行数据归一化。
      1. 在 R 开发平台中打开 NetDecoder 归一化脚本(HuLiLab/NetDecoder_Example/raw_data/NetDecoder_normalize.R),该脚本可通过 https://github.com/HuLiLab/NetDecoder_Example/tree/main 获取,并编辑斜体部分,使其匹配包含细胞强度文件(CEL)的工作目录。
        setwd(~/NetDecoder_Example/raw_data/CEL_files)
    3. 模板匹配 — 可选
      注:若未执行“数据准备”部分中步骤 1.1–1.4.1 所述的差异表达分析,则此为第二种可选方法。
      1. 对于未通过 limma、edgeR 或 DESeq2 处理的 RNA 测序数据,应在应用模板匹配前进行外部归一化。对于微阵列数据,可直接使用步骤 1.1–1.4.2 生成的归一化表达值。
      2. 选择对照条件作为基因表达的基准模板,并将所有其他感兴趣条件的归一化基因表达值与该模板进行比较。
      3. 计算每个基因表达谱与所选模板之间的皮尔逊相关系数。建议保留具有统计学显著相关性(p < 0.05)且绝对相关系数高于用户自定义阈值(例如 |r| > 0.7)的基因。
  5. 源基因的选择
    注:此步骤的输入为步骤 1.1–1.4 中生成的归一化基因表达矩阵。
    1. 选择一组显著基因作为源基因。对于基于差异表达的工作流程,设定校正后 p 值和 log2FC 阈值(例如 adj p-value < 0.05 且 |log2FC| > 2)。对于基于模板匹配的工作流程,则从步骤 1.4.3.3 中识别出的显著相关基因中,依据选定的相关性和显著性阈值选择源基因。应选择适当的阈值,使下游网络构建时包含约 300–1,000 个基因。
      注:源基因是信息流在网络中起始并传播的起点。
  6. 为每种表型构建边加权网络(EWN)
    注:此步骤需要以下输入:步骤 1.1–1.4 中生成的归一化基因表达矩阵;以边列表格式(geneA-geneB 对)表示的蛋白质-蛋白质相互作用(PPI)网络;指定每个样本生物学条件标签的样本注释文件(元数据)。PPI 网络以 R 对象形式提供,基于 iRefIndex 蛋白质数据库构建。本方案所用版本包含所有直接相互作用,但排除了自环和多重边。该 PPI 网络包含 15,608 个蛋白质和 180,044 条相互作用。更多细节请参见 NetDecoder-Methods 部分4
    1. 在 R 开发平台中打开 NetDecoder 边加权网络(EWN)脚本(HuLiLab/NetDecoder_Example/input/NetDecoder_Create_EWN.R,可通过 https:/github.com/HuLiLab/NetDecoder_Example/tree/main 获取)4
    2. 编辑脚本中由注释标明的部分(如下所示斜体部分),设置用户特定的路径和用于构建 EWN 的输入文件。
      path<~/NetDecoder_Example/input/
      这是工作目录的路径
      expQuery <- get(load("expBreastCancer_15Set2014.R"))
      这是一个归一化表达矩阵 Rdata 对象的示例
      stQuery < read.csv(“stBreastCancer.csv")
      这是样本元数据
    3. 对表达矩阵进行过滤,仅保留存在于 PPI 网络中的基因。
    4. 针对每种条件,按表型对样本进行子集划分,并使用皮尔逊相关性计算 PPI 网络中所有定义边上的基因-基因成对相关性。相关性计算应基于步骤 1.4 生成的已处理、归一化表达矩阵。
    5. 对每对基因,计算相关系数、绝对相关值及其对应的 p 值。
    6. 移除不完整案例(例如 NA 值)。
    7. 将每种条件的边加权网络导出为制表符分隔文件(无表头),包含以下列:proteinA、proteinB、abs_cor、cor 和 pvalue。
    8. 运行 R 脚本,为所有相关条件创建共表达网络。

2. 安装和配置 NetDecoder

  1. 下载 NetDecoder
    1. 访问 NetDecoder 软件网站(https://netdecoder.hulilab.org/#ver),选择 R 或 Java 版本。
  2. 安装所需软件
    1. 为工作/分析环境安装 Oracle JDK 和 R。
    2. 根据 NetDecoder 文档中列出的清单,使用 Bioconductor(https://netdecoder.hulilab.org/#ver)4 安装所需的 R 软件包。
  3. 下载依赖文件
    1. 下载 NetDecoder 所需的依赖文件,包括基因本体数据(可从 https://geneontology.org/docs/download-ontology/ 获取)以及基因关联参考指南(可从 https://www.ebi.ac.uk/GOA/human_release 获取)。
  4. 设置工作目录
    1. 将所有下载的文件(表达数据、每种条件下生成的共表达网络、基因本体数据和关联参考指南)移至同一个文件夹,该文件夹将作为 NetDecoder 的工作目录。
  5. 添加必要文件夹
    1. 将 NetDecoder 文件夹(https://netdecoder.hulilab.org/wp-content/uploads/2025/07/NetDecoder_Example.zip)下载至 NetDecoder 工作目录中。
    2. 解压 NetDecoder 文件夹。

3. 运行 NetDecoder

  1. 打开分析用 bash 脚本
    1. 打开一个运行 GNU Bash 的终端,并导航至 NetDecoder 工作目录。
    2. 运行命令 nano NetDecoder_Analysis.sh 以打开该 bash 脚本。
  2. 修改脚本
    注意:大部分代码已经编写完成。在此步骤中,需在脚本中指定相应位置的必要参数。
    1. 设置简短名称:
      将斜体部分修改为待比较的条件:myshortname=‘此处填写您的简短名称’
    2. 设置软件路径:
      通过编辑斜体部分,将以下三个路径定义修改为正确的路径:
      JAVA=“/此处填写您的路径”
      export R=“/此处填写您的路径”
      alias R=“/此处填写您的路径”
    3. 设置工作目录:
      将斜体部分修改为所有文件将被访问的工作目录路径:INPUT_DIR=“/此处填写您的路径”
    4. 设置 NetDecoder 库路径:
      将斜体部分修改为步骤 2.4 中从 zip 文件安装的 NetDecoder 库的路径:LIB_DIR=“/此处填写您的路径/netdecoder_lib”
    5. 设置基因本体和关联文件路径:
      将以下两个目录中的斜体部分修改为首选的基因本体/关联文件所在位置:
      SYMBOL=$LIB_DIR/gene_association_file
      GO=$INPUT_DIR/gene_ontology_file
    6. 设置输入参数:
      根据数据情况,按照参考 NetDecoder 脚本中的注释说明,更新以下五行中斜体部分的内容:
      geneList=$INPUT_DIR/gene_file
      state_trt=处理条件
      state_ref=对照条件

      PPI_trt=$INPUT_DIR/treated_co_expression_network_file
      PPI_ref=$INPUT_DIR/reference_co_expression_network_file
    7. 设置正确的执行阶段:
      取消注释(通过删除 # 符号)所需执行的阶段,并在该阶段完成后重新注释。第一阶段为 gen_net_trt,随后是 gen_net_ref,然后是 analysis 阶段,最后是 collect 阶段。
      设置要执行的阶段,从第一阶段开始。
      #STAGE=“gen_net_trt”
      #STAGE=“gen_net_ref”
      #STAGE=“analysis”
      #STAGE=“collect”
    8. 返回主 Bash 终端:
      按下 Ctrl+X,然后按 Y,保存并退出 bash 脚本。
  3. 执行 NetDecoder
    注意:如果运行成功,终端中将显示日志信息。
    1. 切换到终端并运行 ./NetDecoder_Analysis.sh
    2. 按照步骤 3.2.7 中列出的顺序依次执行各个阶段,直至四个阶段均单独完成。
  4. 获取结果
    1. 导航至输出文件和图形摘要。

结果

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

图1所示,NetDecoder 通过一个包含数据处理、网络配置和基于流的分析的结构化工作流程运行,其输出按流程各阶段分别组织到不同的目录中。这种模块化结构能够系统地验证输出结果,确保结果可追溯至每一个计算步骤,从而支持整体的可重复性。

NetDecoder 成功执行后(图2),会在四个目录中生成输出结果:analysiscollectnetworks 以及“your_shortname”,这些目录包含对应于不同条件的数据,包括流值、子网络及其他流相互作用输出的图表和定量结果(图1图2图3)。若这些目录中存在完整填充的文件和图表,则表明分析流程已正确运行。相反,运行失败则表现为输出文件缺失和/或图表不完整。由于 NetDecoder 需要在蛋白质-蛋白质相互作用(PPI)网络中评估成千上万个基因,因此成功的运行通常需要数小时的计算时间,具体时长取决于数据集大小和可用计算资源。以本文展示的代表性人源胆道癌分析为例,在基于 Linux 系统的 Puget3(Puget Systems)工作站上运行 NetDecoder 所需时间约为 4–6 小时。异常短的运行时间可能提示输入数据格式错误或流程未完整执行。输入数据格式不当或流程执行失败可能导致出现错误信息,可通过追溯定位问题根源。图3 展示了 NetDecoder 成功运行后典型的输出结果。本研究所采用的代表性分析使用了来自 255 例胆道癌样本的 RNA 测序数据(OEP001105)6,从而实现了对 I–II 期与 III–IV 期疾病状态之间差异以及不同条件下信息流变化的比较分析。

图4中的三个热图总结了不同条件下基因间网络信息流的整体变化,包括在网络中传递大量信息流的路由基因、重要的下游靶基因或整体上受到显著影响的基因。正负差异流的广泛分布表明,信息在网络中被重新分配,而非均匀地增加或减少。这种基因类型的异质性和多样性支持了NetDecoder识别表型间功能重要性发生改变的基因的能力。

图4 还展示了边级别的条形图,用于量化不同条件下单个基因-基因对相互作用的流量变化。这些结果表明,特定相互作用的流量在不同条件下可能发生变化,反映出依赖于背景的网络重连现象。因此,边流量能够捕捉信息传递在相互作用层面的变化,而差异流量则提供了这些变化在节点层面的汇总,从而有助于优先筛选出在网络影响力上发生最大总体变化的基因。

综上所述,这些输出结果表明,NetDecoder 能够捕捉生物网络中基因(节点水平)、基因-基因相互作用(边水平)以及网络水平上的信息流变化(图 4)。热图可识别在网络中信息传播、路由和接收发生改变的基因,而边水平分析则揭示了驱动这些变化的具体相互作用。表型特异性的信息网络提供了不同条件下网络重连的可视化表示,其中节点代表基因,边的粗细对应信息流的强度(图 4)。这种系统水平的表示有助于识别与所研究条件相关的关键调控基因和通路。此外,这些图形的成功生成也表明 NetDecoder 已被正确执行。

由于 NetDecoder 会产生大量输出文件,识别最关键的結果对于解释至关重要。例如,要分析不同条件之间的流差异(如低阶段与高阶段),可使用两个关键文件(浏览步骤参考图3的文件结构)。第一个文件是“EDGE_CENTERED_SUBNET_flowDifference_Disease.txt”(位于 analysis/Disease 目录中),用于识别在不同条件之间流量变化最大的相互作用(边)。第二个文件是“flowDifference_PRIORITIZED_NETWORK.txt”(位于“your_shortname” 目录中),用于识别流量差异最大的基因(节点)。这两个文件共同提供了网络行为在相互作用层面和基因层面变化的全面视图。

更广泛地说,“analysis”文件夹包含有关网络路由器、关键靶点和重要差异流动基因的信息。“your_shortname”文件夹包含带有表型特异性数据的原始文本文件,例如总流动值、关键靶点和路由器。“networks”文件夹包含由NetDecoder生成的子网络,可在Cytoscape7中进一步分析和可视化。最后,“collect”文件夹包含整合后的数据和图表,对结果提供总体概览。NetDecoder结果的进一步可视化和分析可使用R语言包(如ggplot2、igraph、pheatmap等)进行。

数据处理示意图;表型比较;NetDecoder 表达数据分析设置。
图1 NetDecoder 分析流程及总体功能示意图。 NetDecoder 需要三个基本阶段(黄色框):数据处理、NetDecoder 配置和 NetDecoder 执行。必须严格遵循这些阶段的每一步,以确保获得成功的结果。NetDecoder 需要来自两种条件的表达数据(绿色框中的示例),以预测哪些基因可能与高信息流和基因效用相关。在水龙头类比中,基因表达水平由水龙头的大小表示,即其开启程度,而基因效用或活性则反映通过水龙头的实际水流,说明该通路在功能上被使用的程度。如图所示,一个高表达的基因(水龙头大)可能具有较低的基因效用(水流小),而一个低表达水平的基因(水龙头小)却可能具有较高的基因效用(水流大)。这说明了在特定条件下,即使某些基因的表达水平低于其他基因,它们仍可能具有更高的整体重要性。图中底部中央的示意图展示了基因之间如何相互连接,并表现出不同水平的流量(颜色),而与其表达量(大小)无关。图示使用 BioRender 制作。Blissenbach, E. (2026) https://BioRender.com/8okynbu。 请点击此处查看此图的放大版本。

使用NetDecoder进行基因表达建模的流程图;数据准备、流建模分析。
图2 NetDecoder通用工作流程。 NetDecoder算法的核心原理是通过信息流分析,在蛋白质-蛋白质相互作用(PPI)网络中对基因功能性进行建模。该工作流程始于数据预处理和边加权网络(EWN)构建。来自两种生物学条件(表型1(P1)和表型2(P2))的基因表达数据经过处理,通过差异表达或模板匹配方法识别源基因。随后利用标准化的表达矩阵构建条件特异性的EWN,其中边的权重反映每种表型中基因对之间的关系。NetDecoder进一步量化不同条件间信息流的差异,从而识别网络重构事件及基因功能性的变化。输出结果包括差异信息流评分、上下文特异性的信息网络、影响评分热图,以及其他有助于下游生物学解释和机制发现的网络层面与基因层面的指标。图示使用BioRender绘制。Correia, C. (2026) https://BioRender.com/29cmswf。 请点击此处查看该图的放大版本。

NetDecoder 文件结构图;分析文件夹;关键靶点,表型特异性数据。
图 3 NetDecoder 输出结果与文件夹结构。 本图展示了用于访问和解读结果文件的输出目录结构。斜体表示文件夹名称(位于文件夹图标上),带引号的名称为分析命名中特有的术语。收件箱图标上的数值表示文件或文件类型,具体取决于颜色编码:红色表示各文件夹中包含的文件类型,而关键文件以粗体和下划线标出(flowDifference_PRIORITIZED_NETWORK.txt 和 EDGE_CENTERED_SUBNET_flowDifference_Disease.txt)。文件夹图标来源于 icons8(https://icons8.com)。使用 BioRender 制作。Blissenbach, E. (2026) https://BioRender.com/8okynbu。 请点击此处查看此图的放大版本。

显示蛋白质相互作用中流动差异的基因调控网络分析图,附带条形图结果。
图 4 NetDecoder 生成结果示例。 影响基因(A)、网络枢纽基因(B)和关键靶点(C)的热图,以及特定上下文网络(D)和边流条形图(E),均为 NetDecoder 的关键输出结果。本示例中,采用胆道癌表达数据集(OEP001105)比较早期疾病患者(I–II 期,低)与晚期疾病患者(III–IV 期,高),并应用 NetDecoder 鉴定两组间具有显著差异信息流的基因。各图中红色表示流动增加,蓝色表示流动减少。网络枢纽基因(B)是指大量信息流经的关键中介基因(collect/Disease_Network_routers.pdf);关键靶点(C)为重要的下游调控因子(collect/Disease_Key_targets.pdf);流动差异热图表示不同条件下基因水平信息流的整体变化(analysis/flowDifference_heatmap.pdf)。可可视化表型特异性信息网络(D),其中每个基因代表一个节点,基因-基因相互作用以边(线条)表示(analysis/EDGE_CENTERED_SUBNET_Disease)。边的粗细对应基因间信息流的大小。条形图(E)显示两个选定表型间基因-基因相互作用的边流差异,低分期样本对以青绿色表示,高分期样本对以橙色表示(analysis/Disease_keyEdges.pdf)。 请点击此处查看该图的放大版本。

讨论

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本方案概述了NetDecoder的实施方法,NetDecoder是一种网络生物学框架,可将基因表达数据与蛋白质-蛋白质相互作用(PPI)网络相整合,用于建模特定条件下的信息流,并根据基因在生物系统中的功能影响对其进行优先排序。该方法的成功应用依赖于若干关键步骤、严谨的方法学选择以及对输出结果的正确解读。

本方案的初始阶段包括获取表达数据、生成元数据以及构建统一的表达矩阵。这些步骤对于确保与下游分析的兼容性至关重要。表达矩阵必须以基因为行、样本为列为格式,且矩阵中的样本名称必须与元数据文件中的样本名称完全一致。此阶段的任何不一致(例如样本标识符不匹配或基因名称重复)都将在流程中传递,并导致后续步骤失败。

过滤低质量数据(例如计数较低的基因、缺失值或低方差基因)尤为重要,因为这些特征可能会在基于相关性的网络构建中引入噪声。成功的预处理步骤应得到一个干净的表达矩阵,其中无缺失值,且基因标识符一致,与蛋白质相互作用网络中所使用的标识符相匹配。

该实验方案中的一个关键决策点是,在构建边缘加权网络(Edge Weighted Network, EWN)时,选择使用差异表达分析还是模板匹配方法来筛选源基因。当比较具有充分重复的明确定义的实验组时,差异表达分析最为适用。该方法可识别在不同条件下具有统计学显著性表达变化的基因,并提供诸如log2倍数变化(log2FC)和校正后p值等定量输出结果。成功的分析表现为显著与非显著基因均有分布,而非结果全部不显著。相比之下,当目标是识别表达模式与连续性或参考表达谱相关的基因时,模板匹配更为合适。该方法依据相关性强弱而非差异表达的幅度来保留基因。成功的模板匹配步骤将获得一组与参考条件具有统计学显著相关性的基因。这两种方法的选择会影响下游网络的拓扑结构:差异表达分析强调表达变化的幅度,而模板匹配则强调协调一致的表达模式。

EWN 构建步骤是该实验方案中最关键的环节之一。在此步骤中,标准化的基因表达数据将与蛋白质-蛋白质相互作用(PPI)网络整合,以计算网络中所有相互作用对应的基因-基因成对相关性。仅保留表达数据集与 PPI 网络中共有的基因,以确保生物学相关性和计算一致性。针对每种实验条件,计算网络中所有边的皮尔逊相关系数,并同时获得相应的 p 值和绝对相关值。这些指标构成了 NetDecoder 所使用的边权重。成功的 EWN 构建表现为存在数千个基因-基因相关性、相关性值分布广泛,以及过滤后缺失值极少。此阶段的失败通常源于基因标识符不匹配、样本量不足或基因表达数据标准化不当。NetDecoder 常见的运行失败问题通常可通过系统性地验证输入文件和软件配置加以解决。若 NetDecoder 意外终止或输出不完整结果,用户需检查表达矩阵与元数据文件中的样本标识符是否一致,确认基因标识符在表达数据集、源基因列表和 PPI 网络之间保持统一,并确保表达矩阵中无缺失值。若出现错误或输出结果被截断,用户可验证软件安装情况及版本兼容性,检查运行过程中生成的日志信息,并在进入下游分析前确认每个中间步骤均已成功完成。对输出文件和/或控制台消息的检查有助于在尝试后续分析前定位错误来源。NetDecoder 要求对文件路径、输入参数和依赖项进行细致配置。关键步骤包括指定工作目录和库路径、基因本体(GO)及注释文件、条件特异的 EWN 输入文件以及源基因列表。

由于该流程是分阶段执行的(包括两种条件的网络生成、分析和结果收集),早期阶段的错误将导致后续阶段无法成功完成。一次正常运行会生成四个目录(analysis、collect、networks、“your_shortname”),每个目录包含特定条件下的结果。另一个判断执行是否正确的实用指标是运行时间。成功的运行通常需要数小时才能完成,因为NetDecoder需要评估大规模的相互作用网络;极短的运行时间通常表明输入配置错误或跳过了某些计算步骤。

NetDecoder 在根本上不同于传统的基因优先级排序和网络分析方法。例如,加权基因共表达网络分析(Weighted Gene Co-expression Network Analysis, WGCNA)8 根据基因间的相关性结构对基因进行聚类,但并未引入方向性信息流,也无法量化信息在网络中的传播方式。类似地,通路富集分析9 能够识别功能项的过度代表现象,但无法反映相互作用层面的动态变化或网络连接性的改变。

NetDecoder 采用整合方法,将基因表达数据与蛋白质相互作用(PPI)网络相结合,以建模特定条件下的信息流。通过量化单个基因(节点水平)得分和相互作用(边水平)流动变化,该方法能够捕捉网络结构和信息传递路径在不同条件间的重构情况。这使得可以识别出那些虽然未表现出显著差异表达、但在调控网络行为中仍发挥核心作用的基因,这与基因效用模型(gene utility model, GUM)5一致,该模型认为具有高差异信息流的基因驱动了特定条件下的网络功能。

尽管NetDecoder具有诸多优势,但仍存在若干局限性。首先,它是一种计算框架,基于建模的网络信息流推断基因的重要性,而非依赖直接的实验证据10。因此,其预测结果应被视为假设,需通过生物学实验加以验证。功能验证方法,如基因敲除研究11或靶向扰动实验12,对于确认被NetDecoder识别为高重要性的基因是否真正影响所研究的生物学过程或疾病状态至关重要。其次,该方法高度依赖于底层蛋白质-蛋白质相互作用(PPI)网络的质量和完整性。由于PPI数据库通常偏向于已被广泛研究的基因,导致较少被表征的相互作用可能被低估,从而可能限制新调控关系的发现。样本量、实验设计和数据质量的差异也可能影响网络构建及后续的信息流计算。第三,NetDecoder并不假设静态的网络边能够完全捕捉动态的信息流动。相反,NetDecoder利用PPI网络作为 结构先验,推断特定上下文下的活性,并量化信息流,该结构先验作为定义生物学上合理相互作用空间的支架。随后通过叠加 状态特异性的分子数据 (例如基因表达),以依赖上下文的方式对网络的子集进行重新加权或激活,从而引入动态行为。

NetDecoder 的主要目标是在保持基因(节点)之间定量且连续关系的前提下,对静态蛋白质相互作用(PPI)网络框架上的信息传播进行建模。相比之下,布尔网络等方法通过将蛋白质活性建模为由逻辑相互作用控制的离散“开/关”状态,从而提供了一种简化的、可解释的动力学表示形式13。这些方法已被广泛用于在不同条件下研究基因调控网络和信号通路网络14,15,16。然而,这类方法通常需要预定义的逻辑规则并对蛋白质状态进行离散化处理,而在大规模、异质性的生物PPI网络中,大规模地定义这些规则具有挑战性17。在此背景下,布尔网络建模代表了与NetDecoder互补的研究方向。尽管NetDecoder能够捕捉连续的、定量的信息流,但整合基于逻辑规则的动力学模型或混合离散-连续模型,有望增强对特定条件下信号行为的可解释性。因此,开发具有布尔网络特征的信息流算法,是未来研究的一个有前景的方向。

NetDecoder 未来的发展方向包括整合更多类型的组学数据,并扩展至单细胞转录组学,以提高分辨率和生物学背景信息。例如,基于深度学习的空间转录组表达预测与填补方法旨在提升数据质量和信号恢复效果,但并未显式建模交互网络中的信息流动18,19。引入多组学层面的分析有望进一步增强其预测能力,并获得更可靠的结果。随着方法学的持续发展,NetDecoder 将能够生成多层次的信息流,为科研人员提供针对其关注数据的多组学验证支持。

披露

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

作者无财务利益冲突。
图1和图2的示意图使用BioRender(BioRender.com)制作。

致谢

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

本工作获得了以下机构资助:梅奥诊所生物医学发现中心、梅奥诊所综合癌症中心(美国国立卫生研究院;P30 CA015083)、梅奥诊所胃肠道细胞信号转导中心(美国国立卫生研究院:P30DK084567)、格伦医学研究基金会 、V癌症研究基金会(S.Z.)、 梅奥诊所营养与肥胖研究项目、大卫·F·和玛格丽特·T·格罗赫内癌症免疫学与免疫治疗项目、施密特科学与创新项目,以及美国国立卫生研究院(NIH;U19AG74879、P50CA136393、 R01CA240323、 R03OD038392)。

材料

本文使用的材料清单
姓名公司目录编号评论
AnnotationDbiBioconductorversion 1.68.0注释与基因映射
BioconductorBioconductorversion 3.19转录组数据分析框架及支持 DESeq2、edgeR、limma、AnnotationDbi 和物种数据库等的软件包生态系统
CytoscapeThe Cytoscape Consoritumversion 3.10.4网络可视化与分析
DESeq2Bioconductorversion 1.46.0差异表达分析(基于负二项分布建模)
dplyrPosit Software, PBC 前身为 RStudio, PBCversion 1.1.4数据操作与转换
edgeRBioconductorversion 4.4.2基于计数的差异表达分析
ggplot2Posit Software, PBC 前身为 RStudio, PBCversion 4.0.0数据可视化与绘图  
GNU BashGNU 项目系统默认Bash,用于执行 NetDecoder 流程脚本
igraphigraph 开发团队version 2.1.4网络构建与图分析
LimmaBioconductorversion 3.62.2基因表达分析的线性模型
NetDecoderHu Li 实验室,梅奥诊所(2024 Hu Li 实验室)通过信息流建模构建特定上下文的蛋白质相互作用网络
org.Hs.eg.dbBioconductorversion 3.20.0人类基因注释数据库
Oracle JDKOracle 公司≥ version 1.8NetDecoder 运行所需的运行环境
pheatmapRaivo Koldeversion 1.0.13表达与相关性结构的可视化
RR 基金会version 4.4.2转录组与网络分析的核心环境

重印与许可

申请许可以重复使用本 JoVE 文章的文本或图表

申请许可

标签

233 233
视频即将推出

相关文章