我想用 R 中的插入符号包为 PLS-DA 绘制个人图(类似于 PCA 图)并为不同的组添加颜色(见附图,这是 PCA 的一个示例,但我想要相同PLS-DA 的图形)。有人可以帮我弄这个吗?
这是一个生成与我使用的数据相似的随机数据的代码。Ycalib 包含有 2 个级别的向量变量,Xcalib 包含 539 个光谱波长(代码下方生成 10 个波长)。
set.seed(1001)
Ycalib <- data.frame(
y = sample(c("0", "1"), 10, replace = TRUE)
)
set.seed(1001)
Xcalib <- data.frame(
x1 = sample(1:10),
x2 = sample(1:10),
x3 = sample(1:10),
x4 = sample(1:10),
x5 = sample(1:10),
x6 = sample(1:10),
x7 = sample(1:10),
x8 = sample(1:10),
x9 = sample(1:10),
x10= sample(1:10)
)
这是我在插入符号中的 PLS-DA 代码:
library(caret)
set.seed(1001)
ctrl<-trainControl(method="repeatedcv",number=10,classProbs = TRUE,summaryFunction = twoClassSummary)
plsda<-train(x=Xcalib, # spectral data
y=Ycalib, # factor vector
method="pls", # pls-da algorithm
tuneLength=10, # number of components
trControl=ctrl, # ctrl contained cross-validation option
preProc=c("center","scale"), # the data are centered and scaled
metric="ROC") # metric is ROC for 2 classes
plsda
我希望它足够清楚,因为我是 R 的初学者。