如何在 R 中创建 PLS-DA?

问题描述 投票:0回答:1

我如何更改 PCA 的波纹管代码以获得仅适用于 PLS-DA 的类似图表?

library(ggplot2)
library(mixOmics)
library(ggforce)

all_datanoT <- cbind(amino,sphingo,hexose,phospha,lyso,cleaned_xl_Kopie)
all_datawT <- cbind(aminotnos,sphingo,hexose,phospha,lyso,cleaned_xl_Kopie)
rownames(all_datawT) <- sample_id$`Sample Identification`


alldata_naomit <-na.omit(all_datanoT)
all_datawTnaomit <-na.omit(all_datawT)

mypr <- prcomp(log2(alldata_naomit), scale = TRUE)
summary(mypr)

str(mypr)
mypr$x


PC1 <- mypr$x[, 1]
PC2 <- mypr$x[, 2]
pcat <- cbind(all_datawTnaomit, PC1, PC2)

ggplot(pcat, aes(x=PC1, y=PC2, col = `Time point`, fill = `Time point`)) +
  stat_ellipse(geom = "polygon", col= "black", alpha =0.5)+
  geom_point(shape=21, col="black")
r pca
1个回答
1
投票

使用

plsr
包的
pls
函数来执行 pls-da 而不是执行 pca 的
prcomp
函数。请注意,对于 pls-da,您需要提供 Y 参考数据作为因子,如果有 2 个以上的组,则需要作为矩阵提供。

然后您可以根据需要绘制 pls-da 模型的分数,但对于 pls-da,我们通常绘制预测类别与作为参考提供的类别 (Y)。

或者,您也可以使用

mdatools
包并按照此处提供的优秀示例进行操作:https://mda.tools/docs/plsda.html

© www.soinside.com 2019 - 2024. All rights reserved.