多元统计模型:完整技术报告
主要发现:全局 O2PLS 中,代谢物总变异的 56% 属于与转录组共享的联合部分,用基因联合得分可预测代谢物变异的 52%(置换 P=1.0e-03);DIABLO 区分 R/Y 的留一法错误率为 0.00,区分 5 个水平为 0.67。
本页保留全部详细说明;日常浏览请用简洁页面。
1 分析目的
从整体上把两组学的变异拆成“两边共有”和“各自特有”的部分,量化两组学共享多少信息,并找出对共享部分贡献最大的基因和代谢物。不同模型的假设不同,多个模型结果一致时结论更可靠。
2 分析原理
O2PLS:把基因矩阵 X 和代谢物矩阵 Y 分解为 X = TW′ + ToPo′ + E,Y = UC′ + UoQo′ + F。T、U 为联合得分(两组学共变的部分),To、Uo 为各自特有的正交得分,W、C 为联合载荷。R2X_joint、R2Y_joint 为联合部分解释的方差比例;R2Yhat 为用基因联合得分预测代谢物能解释的方差比例。成分数(联合 n、基因特有 nx、代谢物特有 ny)用 5 折交叉验证的 adjR² 准则在 n=1–5、nx、ny=0–3 中选取;显著性:打乱代谢组样本顺序 1000 次重新拟合,比较 R2Yhat。
正则化典型相关分析(rCCA):寻找 a、b 使 cor(Xa, Yb) 最大;变量数远多于样本数时协方差矩阵不可逆,用收缩法(shrinkage)正则化。偏最小二乘(PLS / sPLS):寻找使 cov(Xa, Yb) 最大的方向(canonical 模式,两组学对称);全局用稀疏 PLS,每个成分保留 100 个基因、50 个代谢物。
冗余分析(RDA):以基因前 5 个主成分为解释变量,对代谢组做多元线性回归后再做 PCA;调整 R² 表示代谢组变异中能被基因主成分线性解释的比例,置换检验 999 次。
DIABLO:多块稀疏 PLS 判别分析,同时最大化每个组学与分类标签的协方差以及两组学之间的协方差(设计矩阵非对角元 0.1)。全局分别以 10 组、处理(R/Y)、水平(1–5)为标签,成分数 4、2、3,每成分保留 50 个基因、30 个代谢物;用留一法(LOO)计算分类错误率(centroids 距离,加权投票)。
3 输入数据及预处理
全局:方差最大的 5000 个表达基因 + 全部代谢物,分 ALL(30 样本)、R(15 样本)、Y(15 样本)三套;逐比较:该比较的差异基因和差异代谢物,6 个样本。全部变量标准化(均值 0、方差 1)。代谢物未检出值(服务商填为固定下限 10.018)在本流程中不当作真实强度:相关、活性和热图里记为 NA;PCA、Procrustes、O2PLS、CCA、PLS、DIABLO、MOFA、WGCNA、Mfuzz 等需要完整矩阵的方法,用该物质最小检出值的一半填补(半最小值填补),只用于这些方法。
4 软件、算法及参数
| 软件 / 函数 | 版本 | 用途与关键参数 |
|---|---|---|
| OmicsPLS | 2.1.0 | o2m、crossval_o2m_adjR2(a=1:5, ax=0:3, ay=0:3, 5 折) |
| mixOmics | 6.30.0 | rcc(method="shrinkage")、pls/spls(mode="canonical")、block.plsda / block.splsda、perf(validation="loo") |
| vegan | 2.7.5 | rda、anova.cca(999 次置换)、RsquareAdj |
5 统计指标解释
下表列出本页出现的全部统计指标和缩写(由页面内容自动生成)。全部术语见术语表。
| 术语 | 中文名 | 英文名 | 定义与读法 |
|---|---|---|---|
| P | P 值 | P value | 在原假设(无差异、无相关或无富集)成立时,得到当前或更极端结果的概率,未经多重检验校正。 |
| NA | 缺失值 | not available | 没有数值。未检出、未检验或不可计算时记为 NA,不当作 0。 |
| r | 相关系数 | correlation coefficient | 本报告中未特别说明时指 Pearson 积矩相关系数,范围 −1 到 1;正值表示同涨同落,负值表示此消彼长,绝对值越大线性关系越强。 |
| R2X_joint | 基因联合部分解释比例 | joint R² of X | O2PLS 联合成分解释的基因总方差比例。 |
| R2Y_joint | 代谢物联合部分解释比例 | joint R² of Y | O2PLS 联合成分解释的代谢物总方差比例。 |
| PCA | 主成分分析 | principal component analysis | 把多变量数据投影到方差最大的正交方向(主成分 PC),用少数几个主成分概括样本间差异。 |
| Procrustes | 普氏分析 | Procrustes analysis | 通过平移、旋转和缩放,把一个样本坐标集合尽量对齐到另一个,残差越小两者结构越一致。 |
| WGCNA | 加权基因共表达网络分析 | weighted gene co-expression network analysis | 把相关矩阵经软阈值幂次变换成加权网络,用拓扑重叠聚类得到共表达模块。 |
| Mfuzz | Mfuzz 模糊聚类 | Mfuzz soft clustering | 基于模糊 C 均值的时间序列聚类,每个分子对每个簇有隶属度,适合噪声较大的表达模式。 |
| O2PLS | 双向正交偏最小二乘 | two-way orthogonal partial least squares | 把两组学各自分解为联合部分(两边共变)、各自特有的正交部分和残差。 |
| R2X | 基因数据解释比例 | R² of X | O2PLS 模型解释的基因(X)总方差比例。 |
| R2Y | 代谢物数据解释比例 | R² of Y | O2PLS 模型解释的代谢物(Y)总方差比例。 |
| R2Xhat | 由代谢物预测基因的解释比例 | predicted R² of X from Y | 用代谢物联合得分预测基因数据能解释的方差比例。 |
| R2Yhat | 由基因预测代谢物的解释比例 | predicted R² of Y from X | 用基因联合得分预测代谢物数据能解释的方差比例。 |
| CCA | 典型相关分析 | canonical correlation analysis | 寻找两组变量的线性组合,使两组合之间相关最大。 |
| rCCA | 正则化典型相关分析 | regularized CCA | 变量数多于样本数时,在协方差矩阵上加收缩正则化后再做 CCA。 |
| PLS | 偏最小二乘 | partial least squares | 寻找两组变量的线性组合,使两组合之间协方差最大。 |
| sPLS | 稀疏偏最小二乘 | sparse PLS | 在 PLS 中加 L1 惩罚,每个成分只保留指定数量的变量。 |
| RDA | 冗余分析 | redundancy analysis | 多元回归 + PCA:用一组解释变量(这里是基因主成分)解释另一组变量(代谢组)的变异。 |
| DIABLO | 多组学判别分析 | Data Integration Analysis for Biomarker discovery using Latent cOmponents | mixOmics 中的多块稀疏 PLS 判别分析,同时最大化各组学与分组的相关和组学之间的相关。 |
| LOO | 留一法交叉验证 | leave-one-out cross-validation | 每次留出 1 个样本作测试、其余建模,重复 n 次估计错误率。 |
| MOFA | 多组学因子分析 | Multi-Omics Factor Analysis | 无监督贝叶斯因子模型,把多组学数据分解为若干共享或组学特有的潜在因子。 |
6 图表与结果展示
全局结果
表注:set 样本集合;samples、genes、mets 样本数和变量数;n、nx、ny 联合成分、基因特有、代谢物特有成分数(交叉验证选取);R2X、R2Y 模型解释的基因、代谢物总方差比例;R2X_joint、R2Y_joint 联合部分解释的比例;R2Xhat、R2Yhat 用另一组学联合得分预测本组学的解释比例;cor_joint1 第一联合成分两组学得分的相关;perm_p_R2Yhat 置换检验 P(1000 次)。
| set | samples | genes | mets | n | nx | ny | R2X | R2Y | R2X_joint | R2Y_joint | R2Xhat | R2Yhat | cor_joint1 | perm_p_R2Yhat |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ALL | 30 | 5000 | 1283 | 5 | 3 | 0 | 0.8141 | 0.5583 | 0.7488 | 0.5583 | 0.7066 | 0.516 | 0.9835 | 0.000999 |
| R | 15 | 4770 | 1280 | 1 | 1 | 0 | 0.5441 | 0.2613 | 0.4166 | 0.2613 | 0.3847 | 0.2413 | 0.961 | 0.002997 |
| Y | 15 | 4931 | 1279 | 4 | 3 | 0 | 0.7829 | 0.5354 | 0.6754 | 0.5354 | 0.6537 | 0.5188 | 0.9825 | 0.000999 |
表注:model 分类标签;classes 类别数;ncomp 成分数;loo_error 留一法总体错误率(centroids 距离、加权投票);block_cor_comp1 两组学第一成分得分的相关。
| model | classes | ncomp | loo_error | block_cor_comp1 |
|---|---|---|---|---|
| group | 10 | 4 | 0.5667 | 0.9939 |
| treat | 2 | 2 | 0 | 0.9943 |
| level | 5 | 3 | 0.6667 | 0.9236 |
各比较结果
表注:n_gene、n_met 为进入模型的差异基因和差异代谢物数;o2pls、rcca、pls、diablo 为各模型状态,ok=已建模,其他为失败原因;note 为未建模或简化的说明。
| comparison | n_gene | n_met | o2pls | rcca | pls | diablo | note |
|---|---|---|---|---|---|---|---|
| R1_vs_Y1 | 2798 | 75 | ok | ok | ok | ok | |
| R2_vs_Y2 | 2389 | 103 | ok | ok | ok | ok | |
| R3_vs_Y3 | 3043 | 124 | ok | ok | ok | ok | |
| R4_vs_Y4 | 4222 | 150 | ok | ok | ok | ok | |
| R5_vs_Y5 | 5325 | 231 | ok | ok | ok | ok | |
| R1_vs_R2 | 9 | 9 | ok | ok | ok | ok | |
| R1_vs_R3 | 3 | 10 | ok | ok | ok | ok | |
| R1_vs_R4 | 2173 | 58 | ok | ok | ok | ok | |
| R1_vs_R5 | 5034 | 65 | ok | ok | ok | ok | |
| R2_vs_R3 | 8 | 12 | ok | ok | ok | ok | |
| R2_vs_R4 | 1909 | 51 | ok | ok | ok | ok | |
| R2_vs_R5 | 4561 | 69 | ok | ok | ok | ok | |
| R3_vs_R4 | 3200 | 99 | ok | ok | ok | ok | |
| R3_vs_R5 | 5456 | 96 | ok | ok | ok | ok | |
| R4_vs_R5 | 1058 | 35 | ok | ok | ok | ok | |
| Y1_vs_Y2 | 4 | 11 | ok | ok | ok | ok | |
| Y1_vs_Y3 | 25 | 19 | ok | ok | ok | ok | |
| Y1_vs_Y4 | 1222 | 76 | ok | ok | ok | ok | |
| Y1_vs_Y5 | 2086 | 110 | ok | ok | ok | ok | |
| Y2_vs_Y3 | 3 | 12 | ok | ok | ok | ok | |
| Y2_vs_Y4 | 974 | 102 | ok | ok | ok | ok | |
| Y2_vs_Y5 | 2378 | 106 | ok | ok | ok | ok | |
| Y3_vs_Y4 | 499 | 103 | ok | ok | ok | ok | |
| Y3_vs_Y5 | 2349 | 125 | ok | ok | ok | ok | |
| Y4_vs_Y5 | 1204 | 30 | ok | ok | ok | ok | |
| R1_vs_Y2 | 2566 | 84 | ok | ok | ok | ok | |
| R1_vs_Y3 | 2837 | 93 | ok | ok | ok | ok | |
| R1_vs_Y4 | 3913 | 84 | ok | ok | ok | ok | |
| R1_vs_Y5 | 5791 | 142 | ok | ok | ok | ok | |
| R2_vs_Y1 | 2602 | 77 | ok | ok | ok | ok | |
| R2_vs_Y3 | 2660 | 119 | ok | ok | ok | ok | |
| R2_vs_Y4 | 3965 | 98 | ok | ok | ok | ok | |
| R2_vs_Y5 | 5683 | 165 | ok | ok | ok | ok | |
| R3_vs_Y1 | 3348 | 82 | ok | ok | ok | ok | |
| R3_vs_Y2 | 2887 | 108 | ok | ok | ok | ok | |
| R3_vs_Y4 | 4615 | 134 | ok | ok | ok | ok | |
| R3_vs_Y5 | 6801 | 203 | ok | ok | ok | ok | |
| R4_vs_Y1 | 4885 | 197 | ok | ok | ok | ok | |
| R4_vs_Y2 | 4818 | 209 | ok | ok | ok | ok | |
| R4_vs_Y3 | 4929 | 237 | ok | ok | ok | ok | |
| R4_vs_Y5 | 4263 | 228 | ok | ok | ok | ok | |
| R5_vs_Y1 | 6155 | 178 | ok | ok | ok | ok | |
| R5_vs_Y2 | 6329 | 204 | ok | ok | ok | ok | |
| R5_vs_Y3 | 6399 | 236 | ok | ok | ok | ok | |
| R5_vs_Y4 | 5959 | 161 | ok | ok | ok | ok |
7 结果描述
O2PLS。全部 30 个样本中,交叉验证选出 5 个联合成分、3 个基因特有成分、0 个代谢物特有成分。联合部分解释基因总方差的 74.9%、代谢物总方差的 55.8%;用基因联合得分预测代谢物可解释 51.6%,置换 P=1.0e-03;第一联合成分两组学得分相关 0.984。只用 R 的 15 个样本时 R2Y_joint 为 26.1%,只用 Y 时为 53.5%。
RDA。基因前 5 个主成分解释代谢组变异的调整 R² 为 0.356(P=0.001);R 内为 0.142(P=0.019),Y 内为 0.270(P=0.001)。
DIABLO。以处理为标签时留一法错误率 0.00,两组学第一成分相关 0.994;以水平为标签时错误率 0.67;以 10 组为标签时 0.57。
逐比较。O2PLS 成功建模的比较有 45 个,未建模的比较原因见建模状态表(差异分子不足 3 个)。
8 生物学意义
数据支持的观察
两组学共享大部分系统性变异:代谢组的主要变化可以由转录组的联合成分线性预测,且这种共享在只看单一处理时依然存在。处理(R/Y)能被两组学完全区分,水平则难以区分,说明处理是最强的变异来源,而水平效应较弱或只在部分水平出现(与差异总览一致)。
需要进一步验证的假设
R 处理内的共享比例低于 Y 处理,可能表示 R 下代谢变化有更多不由转录变化解释的部分(如翻译后调控、底物供应);但 15 个样本的模型不稳定,这一差别需要更多样本确认。
9 局限性
逐比较模型只有 6 个样本、变量数成百上千,模型必然拟合很好(R² 接近 1),只能用于描述,不能评价预测能力,也没有做置换检验。全局 30 个样本也不足以做独立验证。O2PLS 成分数由交叉验证选取,样本少时选择不稳定。DIABLO 的留一法错误率中,按处理分类容易(两类差异大),按水平分类难。
参考文献
- Trygg J, Wold S. O2-PLS, a two-block (X–Y) latent variable regression (LVR) method with an integral OSC filter. Journal of Chemometrics, 2003, 17: 53–64.
- el Bouhaddani S, Uh HW, Jongbloed G, et al. Integrating omics datasets with the OmicsPLS package. BMC Bioinformatics, 2018, 19: 371.
- Rohart F, Gautier B, Singh A, Lê Cao KA. mixOmics: an R package for ’omics feature selection and multiple data integration. PLoS Computational Biology, 2017, 13(11): e1005752.
- Singh A, Shannon CP, Gautier B, et al. DIABLO: an integrative approach for identifying key molecular drivers from multi-omics assays. Bioinformatics, 2019, 35(17): 3055–3062.