将多变量分析的结果对象 MultivariateAnalysisResult 之中的 降维投影结果(score)与载荷结果(loading)抽取为统一的二维表对象 NumericTable,从而可以方便的直接送入聚类、可视化等后续流程。
NumericTableResult
01 Syntax
Microsoft.VisualBasic.Math.Statistics.Hypothesis.ANOVA.NumericTableResult
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| ScoreTable | 1 | 提取降维投影结果(score)为二维表: 1. |
| LoadingTable | 1 | 提取载荷结果(loading)为二维表: 1. |
| IsOplsResult | 1 | 判断分析结果是否来自 OPLS-DA(无法从 MultivariateAnalysisResult.analysis 判定的时候,通过对角成分是否存在进行推断) |
| AppendComponents | 1 | 将各个成分的投影向量收集起来:dims 为各成分的向量, names 为对应的列名({prefix}{i}) |
| TransposeComponents | 1 | 将各个成分的向量转置为 样本 x 成分 的行主序矩阵 |
| SampleNames | 1 | 取样本的行名:优先使用样本 ID(StatisticsObject.YLabels2), 其次是 StatisticsObject.YLabels,缺失的时候生成 1..n 序号 |
| VariableNames | 1 | 取变量的行名:优先使用 StatisticsObject.XLabels, 缺失的时候生成 1..n 序号 |
| WriteLabels | 1 | 将一列附加数据写入结果表的标签矩阵(长度和样本数量不一致的时候自动忽略) |
03 Members
ScoreTable(MultivariateAnalysisResult)
提取降维投影结果(score)为二维表:
- 表的行是样本(行名取样本 ID)
- 表的特征是各个成分的投影坐标,列名分别为
PC1..PCn(PCA)、T1..Tn(PLS-DA / OPLS-DA 的预测成分),OPLS-DA 还会额外追加To1..Tom(正交成分) - 附带的
Y experiment(观测值)与Y predicted(预测值) 作为标签列写入标签矩阵
Parameters
| Name | Type | Description |
|---|---|---|
mvar | MultivariateAnalysisResult | 多变量分析的结果对象 |
LoadingTable(MultivariateAnalysisResult)
提取载荷结果(loading)为二维表:
- 表的行是变量(行名取变量名)
- 表的特征是各个成分的载荷,列名分别为
PC1..PCn(PCA)、P1..Pn(PLS-DA / OPLS-DA),OPLS-DA 还会额外追加Po1..Pom(正交载荷) - 附带的
VIP与Coefficients(回归系数)作为标签列写入标签矩阵
Parameters
| Name | Type | Description |
|---|---|---|
mvar | MultivariateAnalysisResult | 多变量分析的结果对象 |
IsOplsResult(MultivariateAnalysisResult)
判断分析结果是否来自 OPLS-DA(无法从 MultivariateAnalysisResult.analysis 判定的时候,通过对角成分是否存在进行推断)
AppendComponents(
List(Of Double()), List(Of String), IEnumerable(Of Double()), String)将各个成分的投影向量收集起来:dims 为各成分的向量, names 为对应的列名({prefix}{i})
TransposeComponents(
List(Of Double()))将各个成分的向量转置为 样本 x 成分 的行主序矩阵
SampleNames(
StatisticsObject, Int32)取样本的行名:优先使用样本 ID(StatisticsObject.YLabels2), 其次是 StatisticsObject.YLabels,缺失的时候生成 1..n 序号
VariableNames(
StatisticsObject, Int32)取变量的行名:优先使用 StatisticsObject.XLabels, 缺失的时候生成 1..n 序号
WriteLabels(
NumericTable, String, Double())将一列附加数据写入结果表的标签矩阵(长度和样本数量不一致的时候自动忽略)