R语言如何找到患者数据中具有差异的指标?(PLS—DA分析)

参考原文:http://tecdat.cn/?p=4550

从海量数据中发现潜在标志指标, 需要借助多变量模式识别方法. 无监督的模式识别方法包括主成分分析(PCA、聚类分析(HCE)等,根据模式识别模型抽提出对分类有重要贡献的指标后, 如果还需要进一步验证这些指标的差异性,那么可以在r语言中使用PLSDA模型进行分析。

 

   本文使用几组患者对不同指标进行评分的数据,最后使用PLS—DA模型挖掘出不同中医分组方式下存在差异的指标。

数据1 (少分组数据)

通过plsda建模之后,我们对得到的主成分进行画图,并且对不同分组的样本进行标识。 从结果中可以看到不同组别分别有哪些指标,以及哪些指标之间存在显著的差异?

# plsda.breast <- plsda(X, Y, ncomp = 2)

 

# col.breast <- as.numeric(as.factor(Y))

# plotIndiv(plsda.breast, ind.names = TRUE, col = col.breast ,ellipse = TRUE)

 

【大数据部落】R语言如何找到患者数据中具有差异的指标?(PLS—DA分析)

从图中可以看到,分组a和分组b之间存在显著的差异,分组cdef之间的差异较小,分组a分组b和分组cdef间均存在显著差异。

同时,为了我们可以从数值的角度来对这些分组的差异性进行分析。

计算他们的相关矩阵:

距离矩阵

 

从指示变量矩阵的结果来看,a的特征向量和b的特征向量之间存在显著差异,而cdef之间的差异较小

数据2 (多分组数据)
为了测试模型的拓展性,我们测试了更多分组数据。类似可以得到如下的成分散点图:

 

同样计算距离矩阵

dd

从结果中可以看到不同组别分别有哪些指标,以及哪些指标之间存在显著的差异?

从图中可以看到,分组GHEC之间的差异较小,分组ABDFIJK之间差异较小,这两类间均存在显著差异

从指示变量矩阵的结果来看,, GHEC特征向量之间的差异较小距离也较小,分组ABDFIJK之间差异较小距离也较小,这两类间均存在显著差异

你可能感兴趣的:(r语言)