software

NicheNet 配体排了第一,先看看接收细胞的背景基因选对没有

作者:发布于 2026-11-14约 6 分钟阅读
同样命中三个,分量一样吗。教学算例|两份面板都保留了十个响应基因,前五名均命中三个。10 / 100,整份背景有一百个可评估基因,随机命中基线为一成。10 / 20,受限面板只剩二十个基因,随机命中基线升到五成。3 / 5,前五名命中率均为六成,完整排名还要看更多截点以及各自的基线。

在处理后的成纤维细胞里找出一百个上调基因,想知道邻近免疫细胞分泌的哪种配体可能促成这组变化。NicheNet 能把候选配体和接收细胞的转录响应联系起来。它用既有配体、受体、胞内信号和调控知识构成的先验模型,检查一个配体的预测靶点能否解释关注的基因。结果最容易被忽略的一列是背景基因。它决定哪些基因曾有机会被选为响应基因,也决定一个看起来漂亮的命中比例应当和什么比较。

先定义接收端,再列能被检验的基因

把研究问题写成一句具体的话,比如比较同一种成纤维细胞在刺激前后的表达,候选信号来自同一组织里的单核细胞。先在接收群内确定条件差异,核对实验设计和供体重复。若直接拿单核细胞与成纤维细胞的差异作响应基因,结果会优先反映两个谱系本身有何不同。它回答不了刺激之后成纤维细胞新出现了哪些下游变化。一个供体的多个细胞也不能当成多份独立刺激实验。

背景原则上应来自接收群中确实有机会进入这次比较的基因,再与配体–靶标矩阵支持的基因取交集。目标响应集合也要做同样的名字映射,且应属于背景。若候选表有一百行,映射后只剩六十个,就报告实际用于评分的是六十个,另查丢失的四十个是旧名、重复项、物种不匹配,还是模型本身覆盖不到。把参考基因组所有基因都直接作为背景,会把许多实验从未能测到的项目变成表面上的“阴性”。NicheNet 作者的配体活性分析示例

用命中率手算两个不同的背景

假设在一百个可评估基因中有十个真正被列入本次响应集合。某候选配体预测排名第一到第五的基因中,三个属于这十个响应基因。这时取前五名的精确率是五分之三,召回率是十分之三。随机从这个背景里抽基因,预期的阳性比例是一成。下面只作排名直觉演算,软件实际上会沿多个排名截点考察精确率与召回率,并有针对随机基线的校正指标。

情形 背景中响应基因占比 前五名命中 精确率与召回率
一百个可评估基因 10 / 100 3 / 5 60% 与 30%
仅保留二十个可评估基因,仍有十个阳性 10 / 20 3 / 5 仍为 60% 与 30%
同样命中三个,分量一样吗。教学算例|两份面板都保留了十个响应基因,前五名均命中三个。10 / 100,整份背景有一百个可评估基因,随机命中基线为一成。10 / 20,受限面板只剩二十个基因,随机命中基线升到五成。3 / 5,前五名命中率均为六成,完整排名还要看更多截点以及各自的基线。
教学算例|两份面板都保留了十个响应基因,前五名均命中三个。

第二行是另一个受限面板,假定前五名和全部十个阳性都恰好仍然保留。只看表最后一列,二者没有差别。如果再问随机选时会命中多少,第二个背景已有一半是阳性,观察到六成就没有第一行那么引人注意。实际更换背景还可能使候选的顺序本身发生改变。仅凭前三个命中无法复原整个精确率–召回率曲线,更不能把那个百分数当成配体造成响应的概率。这个练习的用途是,拿到别人给的排名时先追问所用分母。

将配体表达、受体可用和靶点解释分开

构建候选配体清单时,可以先限定发送群表达,再查接收群中是否有已知对应受体。两侧分别计算检出比例、阳性细胞数量和供体来源。假设一个配体只由甲供体的单核细胞检出,而相应受体只在乙供体的成纤维细胞检出。将所有细胞合并后,双方都满足“表达过”,但对每位供体逐项核查,就没有共同支持。若采用不限制发送群的探索模式,应明确这种设定允许其他细胞来源,不能按结果倒推分泌者一定是单核细胞。

下例假定已经从差异检验得到接收端的响应列表,另有实际检验过的可表达基因、按发送与接收条件选出的候选配体,以及同一物种的先验矩阵。先检查交集,能将不少“跑完却没有结果”的问题定位到输入。实际分析应记录相交前后分别有多少项,并保留改变过滤标准时的完整排名。NicheNet 项目说明

background <- intersect(unique(tested_in_receiver), rownames(ligand_target_matrix))
geneset <- intersect(unique(receiver_response), background)
ligands <- intersect(unique(candidate_ligands), colnames(ligand_target_matrix))
stopifnot(length(geneset) > 0, length(geneset) < length(background),
          length(ligands) > 0)
ranked <- nichenetr::predict_ligand_activities(
  geneset = geneset, background_expressed_genes = background,
  ligand_target_matrix = ligand_target_matrix, potential_ligands = ligands
)
head(ranked[order(-ranked$aupr_corrected), ])

若采样面板只测免疫相关基因,还可做一次对照实验。用一份较完整的表达数据先按全量基因排名,然后人为限制到面板能够看到的基因,再以同样的条件差异重算。如果某个配体只有在受限面板中才挤到首位,就查它的共有靶点是否恰好占据面板的大部分。这个检查能区分生物学上的特异性与面板设计自带的偏向。

两个配体都能解释同一组基因时如何选

把排名靠前的两个配体预测靶点并排列出,分别圈出共有靶、各自特有靶以及真正进入观测响应的靶。若两者的支持主要来自同一组广泛应激基因,排名先后可能不足以区分上游。设计实验时,选一两个共有靶作为通用读出,再选两组能区分配体的特有读出,同时核实接收细胞的受体表达和培养条件。只盯着两个候选都能解释的那一条靶基因,即便加配体后它升高,也很难判断哪条机制更贴近组织内的实际响应。

还有一个很省力的敏感性检查。保留发送端及先验矩阵,分别在每个独立供体或留出一个供体后重算接收端响应,再看第一批候选配体是否大致一致。结果若只在某个过浅的样本加入后改变,先检查背景交集和阳性比例是否一起改变。条件差异明显时,可将上调和下调基因分开形成可解释的问题,避免一份没有方向说明的响应清单让读者误以为所有候选都能预测激活或抑制的符号。

交给实验同事的材料最好包括发送细胞来源、接收端的候选受体、支持与区分候选的靶点,以及能推翻当前解释的结果。这样一个排名才有机会变成可操作的验证方案。后续要为多对细胞群和多份样本在同一套参考网络上复算时,可了解云生信的生物信息分析服务器。

把知识用于当前任务

下一步可以直接开始分析

按研究目标查找在线工具、课程、计算资源或完整分析服务。

按目标找方案仍有疑问,联系客服 ↗