Я провожу knn
регрессию на моих данных и хотел бы:
a) провести перекрестную проверку с помощью repeatcv, чтобы найти оптимальный k
;
b) при сборке* Модель 1007 *, использующая PCA
при пороговом уровне 90% для уменьшения размерности.
library(caret)
library(dplyr)
set.seed(0)
data = cbind(rnorm(15, 100, 10), matrix(rnorm(300, 10, 5), ncol = 20)) %>%
data.frame()
colnames(data) = c('True', paste0('Day',1:20))
tr = data[1:10, ] #training set
tt = data[11:15,] #test set
train.control = trainControl(method = "repeatedcv", number = 5, repeats=3)
k = train(True ~ .,
method = "knn",
tuneGrid = expand.grid(k = 1:10),
trControl = train.control,
preProcess = c('scale','pca'),
metric = "RMSE",
data = tr)
Мой вопрос: в настоящее время пороговое значение PCA по умолчанию составляет 95% (не уверен), как я могу его изменитьдо 80%?