PRISM(Profiling Relative Inhibition Simultaneously in Mixtures,Broad Institute)用一项巧妙的技术解决了药敏筛选的通量瓶颈:给每个细胞系插入独特的 DNA 条形码,然后把数百个细胞系混在同一个孔里一起处理,最后通过测序读出各条形码的相对丰度,推断每个细胞系的存活情况。
条形码方法的价值
| 维度 | 传统一系一孔 | PRISM 混合池 |
|---|---|---|
| 每个化合物的孔数 | = 细胞系数 | 1 个孔测数百细胞系 |
| 通量 | 受限 | 高数百倍 |
| 成本 | 高 | 大幅降低 |
| 批次效应 | 孔间差异 | 同孔内测,天然可比 |
| 限制 | — | 细胞系需能共培养且生长速率相近 |
「同孔内比较」是一个被低估的优势:所有细胞系经历完全相同的药物浓度、培养条件、处理时间,细胞系之间的相对敏感性比较因此更可靠。
Repurposing 数据集
PRISM 最有影响的产出是 Repurposing 数据集:在约 500 个癌细胞系中测试了约 4,500 个化合物,其中大部分是已上市或已进入临床的非肿瘤药物。
import pandas as pd
# 从 DepMap 门户下载 PRISM Repurposing 数据
sec = pd.read_csv("Repurposing_Public_23Q2_Extended_Primary_Data_Matrix.csv",
index_col=0) # 行=细胞系, 列=化合物
meta = pd.read_csv("Repurposing_Public_23Q2_Extended_Primary_Compound_List.csv")
# 找「非肿瘤药物但在部分细胞系中有强活性」的候选
non_onc = meta[~meta["disease.area"].str.contains("oncology", na=False)]
sub = sec[[c for c in sec.columns if c in set(non_onc["IDs"])]]
# 选择性活性:部分细胞系强抑制,多数无效
selective = sub.columns[(sub < -1.0).sum() >= 10] # 至少 10 个细胞系强响应
selective = [c for c in selective if (sub[c] < -1.0).mean() < 0.3] # 但不是全都响应
print(f"选择性活性的非肿瘤药物候选:{len(selective)}")
这个数据集揭示了什么
- 相当数量的非肿瘤药物有抗癌活性:原始研究发现数十个此前未知有抗癌活性的化合物在特定细胞系中有选择性杀伤。
- 发现了新的作用机制:例如某些抗炎药、抗组胺药通过与其已知靶点无关的机制杀伤癌细胞。这类「已知药物、未知机制」的发现,正是重定位最有价值的产出。
- 提供了机制去卷积的线索:把活性谱与基因组特征关联,可以推断新的作用靶点。
怎么正确解读
- 必须核对可达浓度。这是重定位分析最关键的一步。细胞实验中有效的浓度,人体给药后能否在血浆或组织中达到?很多「有活性」的老药,其有效浓度远高于临床可达的暴露量,重定位在药代上就不成立。做重定位分析时,务必把体外 IC50 与已知的 Cmax、游离药物浓度对照。
- 区分选择性杀伤与普遍毒性:对所有细胞系都有效的化合物往往只是普遍细胞毒,治疗窗口窄。有价值的是选择性活性。
- 混合池的固有限制:生长过快或过慢的细胞系在池中的表现可能失真;需要贴壁特殊条件的细胞系不适用。
- 需要独立验证:混合池结果应在单独培养中验证,再进入体内模型。
在研发中的位置
- 快速的适应症拓展探索:手上有一个化合物,想知道它可能对哪类肿瘤有效。
- 机制推断:活性谱与已知机制药物的相似性,提示可能的作用靶点(与 LINCS 见 268《LINCS L1000》 的连通性分析思路相通)。
- 老药新用的起点:已上市药物有现成的安全性与药代数据,若能找到新适应症,开发路径大幅缩短——前提是浓度可达。
- 与依赖性数据互补:DepMap 告诉你敲除什么有效,PRISM 告诉你什么化合物有效。两者交叉能验证靶点的可成药性。
上手提示
- 条形码混合池大幅提升通量,且同孔内比较天然可比;
- 重定位分析必须核对临床可达浓度,这是最容易被忽略的致命环节;
- 关注选择性活性,普遍有效的多半只是细胞毒;
- 混合池结果需在单独培养中独立验证。
延伸资源
- 药敏对照:266《GDSC》;依赖性:264《DepMap》;
- 转录组扰动:268《LINCS L1000》;DTI 与重定位:178《DeepPurpose》。