この記事のゴール
LR 共発現にもとづく細胞間相互作用の推定原理と、LIANA(コンセンサス)/CellPhoneDB(順列検定)の使い方を理解し、結果の限界と検証の必要性を押さえること。
何を問うか
細胞はリガンド(送り手が出す分子)と受容体(受け手が持つ分子)を介して情報をやり取りします。scRNA-seq の細胞間相互作用解析は、「送り手細胞型でリガンドが、受け手細胞型で受容体が発現しているか」を手がかりに、細胞型ペアごとの LR 相互作用を推定します。
推定の原理
基本は次の2点です。
- 強度(magnitude)と特異性(specificity):送り手の L 発現と受け手の R 発現の積(や平均)を強度としてスコア化し、その LR がどれだけ特定のペアに偏るかを特異性として評価します。
- 有意性は順列検定:細胞型ラベルをシャッフルして帰無分布を作り、観測スコアがそれより極端かを見ます(CellPhoneDB の考え方)。
💡 入力は正規化発現+細胞型ラベル
LR 解析は正規化済みの発現と確定した細胞型ラベルを使います。アノテーションが曖昧だと、相互作用の送り手・受け手の解釈もぶれます。
なぜ手法が乱立するのか → LIANA のコンセンサス
LR 解析は多くの手法(CellPhoneDB・NATMI・Connectome・SingleCellSignalR・CellChat・log2FC など)があり、スコアの定義が手法ごとに異なるため、結果が一致しにくいことが知られています。そこで LIANA は、これら複数手法を同じ枠組みで実行し、ランク統合(rank_aggregate)でコンセンサスを出します。これにより、特定手法のクセに引きずられにくくなります。
コード(LIANA のコンセンサス)
pythonimport liana as li
import scanpy as sc
# 前提:アノテーション済み・正規化済み(log1p)。複数手法のコンセンサスで LR を推定
li.mt.rank_aggregate(
adata, groupby="cell_type",
resource_name="mouseconsensus", # マウス用の LR リソース(ヒトは "consensus")
expr_prop=0.1, # 各細胞型で10%以上の細胞が発現する LR のみ
use_raw=False,
)
res = adata.uns["liana_res"] # source, target, ligand, receptor, magnitude_rank, specificity_rank ...
# 可視化:送り手・受け手を指定してドットプロット
li.pl.dotplot(
adata, colour="magnitude_rank", size="specificity_rank",
source_labels=["Astrocyte"], target_labels=["ExN", "InN"],
top_n=20, orderby="magnitude_rank", orderby_ascending=True,
)
🔧 環境メモ:pip install liana。既定リソースは OmniPath 由来の consensus(マウスは mouseconsensus)。expr_prop で「各細胞型で何割の細胞が発現していれば採用するか」を決めます(低すぎると偽の相互作用が増える)。magnitude_rank は強度、specificity_rank は特異性のコンセンサス順位です。API はバージョンで変わるため公式チュートリアル参照。
CellPhoneDB(順列検定)の位置づけ
CellPhoneDB は、LR ペアの平均発現に対する順列検定で有意な相互作用を出す代表的手法で、ヘテロ多量体(複合体)を扱える点が特徴です。LIANA からも個別手法として呼べます。
python# 個別手法も呼べる(例:CellPhoneDB 流の順列検定)
from liana.method import cellphonedb
cellphonedb(
adata, groupby="cell_type", resource_name="mouseconsensus",
expr_prop=0.1, use_raw=False, n_perms=1000,
)
重大な注意 ― 「共発現」は「相互作用」ではない
⚠️ 推定であって、証明ではない
LR の共発現が見えても、実際にシグナルが伝わっている証拠にはなりません。次の3点が原理的な限界です。
– 空間情報がない:標準の scRNA-seq は位置情報を持ちません。共発現する2細胞型が物理的に接していないかもしれません(空間トランスクリプトミクスや LIANA+ で補える)。
– mRNA ≠ タンパク:受容体・リガンドの mRNA があっても、翻訳・局在・活性は別問題。分泌リガンドは拡散もします。
– 下流効果は分からない:LR 共発現は「つながりうる」ことを示すだけで、受け手で何が起きるかは語りません(下流標的まで見るには NicheNet など)。
→ 強く出た相互作用は仮説として扱い、空間データ・機能実験・既知の生物学で裏取りしてください。
ツール早見表
| ツール | 言語 | 方式 | 特徴 |
|---|---|---|---|
| LIANA | Python/R | 複数手法のコンセンサス | 手法のクセを平準化(本記事の中心) |
| CellPhoneDB | Python | 順列検定・複合体対応 | 統計的有意性・LIANA からも利用可 |
| CellChat | R | 経路・通信確率 | シグナル経路単位で集約 |
| NicheNet | R | 下流標的まで予測 | 受け手の遺伝子発現への影響を推定 |
| Tensor-cell2cell | Python | 多サンプル分解 | 条件・サンプル横断のパターン抽出 |
📌 使い分けの目安:まず LIANA のコンセンサスで頑健に LR を絞り、統計的有意性が要れば CellPhoneDB、経路単位でまとめたいなら CellChat、受け手で何が起きるかまで踏み込むなら NicheNet、多サンプル比較なら Tensor-cell2cell。
落とし穴
⚠️ つまずきやすい点
– 共発現≠相互作用:結果は仮説。空間・機能・既知の生物学で検証する。
– 手法・リソース依存:結果が割れる。LIANA のコンセンサスで平準化。
– 発現割合のしきい値:expr_prop が低すぎると偽の相互作用が増える。
– 多重比較:細胞型ペア×LR が膨大。順位・有意性を併せて絞る。
– アノテーション依存:細胞型が曖昧だと送り手・受け手の解釈がぶれる。
– 生物種:リソースは生物種を合わせる(マウスは mouseconsensus)。
– 下流効果は別:LR は「つながりうる」だけ。効果は NicheNet 等で。
まとめ
- 細胞間相互作用解析は、送り手の L 発現・受け手の R 発現から細胞型ペアの LR を推定する。強度(magnitude)と特異性(specificity)でスコア化し、有意性は順列検定。
- 手法は乱立し結果が割れるため、LIANA のコンセンサス(rank_aggregate)で頑健に絞るのが実践的。統計的有意性は CellPhoneDB。
- 共発現は相互作用の証明ではない。空間情報がない・mRNA≠タンパク・下流効果は不明という限界を踏まえ、仮説として検証する。
次の記事:遺伝子制御ネットワーク・転写因子活性(GRN/TF activity) — 発現の背後にある転写因子の活性・制御関係を推定する方法に進みます。
関連記事
- 📖 下流解析の全体像:下流解析全体の地図
- 📖 機能エンリッチメント:経路・転写因子活性(活性推定は本記事とも関連)
- 📖 RNA velocity と運命予測:本記事の前段(方向・運命の推定)
参考文献
- Dimitrov, D., Türei, D., Garrido-Rodriguez, M., et al. (2022). Comparison of methods and resources for cell-cell communication inference from single-cell RNA-Seq data. Nature Communications, 13, 3224. doi:10.1038/s41467-022-30755-0
- Dimitrov, D., Schäfer, P. S. L., Farr, E., et al. (2024). LIANA+ provides an all-in-one framework for cell–cell communication inference. Nature Cell Biology, 26, 1613–1622. doi:10.1038/s41556-024-01469-w
- Efremova, M., Vento-Tormo, M., Teichmann, S. A., & Vento-Tormo, R. (2020). CellPhoneDB: inferring cell–cell communication from combined expression of multi-subunit ligand–receptor complexes. Nature Protocols, 15, 1484–1506. doi:10.1038/s41596-020-0292-x
- Jin, S., Guerrero-Juarez, C. F., Zhang, L., et al. (2021). Inference and analysis of cell-cell communication using CellChat. Nature Communications, 12, 1088. doi:10.1038/s41467-021-21246-9
- Browaeys, R., Saelens, W., & Saeys, Y. (2020). NicheNet: modeling intercellular communication by linking ligands to target genes. Nature Methods, 17, 159–162. doi:10.1038/s41592-019-0667-5
- Armingol, E., Officer, A., Harismendy, O., & Lewis, N. E. (2021). Deciphering cell–cell interactions and communication from gene expression. Nature Reviews Genetics, 22, 71–88. doi:10.1038/s41576-020-00292-x
- Armingol, E., Baghdassarian, H. M., Martino, C., et al. (2022). Context-aware deconvolution of cell–cell communication with Tensor-cell2cell. Nature Communications, 13, 3665. doi:10.1038/s41467-022-31369-2
- Kolde, R., Laur, S., Adler, P., & Vilo, J. (2012). Robust rank aggregation for gene list integration and meta-analysis. Bioinformatics, 28, 573–580. doi:10.1093/bioinformatics/btr709


コメント