本文介紹caret包中的創建模型及驗證的過程。主要涉及的函數有train(),predict(),confusionMatrix(),以及pROC包中的畫roc圖的相關函數。html
在進行建模時,需對模型的參數進行優化,在caret包中其主要函數命令是train。git
train(x, y, method = "rf", preProcess = NULL, ..., weights = NULL, metric = ifelse(is.factor(y), "Accuracy", "RMSE"), maximize = ifelse(metric %in% c("RMSE", "logLoss", "MAE"), FALSE, TRUE), trControl = trainControl(), tuneGrid = NULL, tuneLength = ifelse(trControl$method == "none", 1, 3))
下面來具體介紹一下trainControl函數github
trainControl(method = "boot", number = ifelse(grepl("cv", method), 10, 25), repeats = ifelse(grepl("[d_]cv$", method), 1, NA), p = 0.75, search = "grid", initialWindow = NULL, horizon = 1, fixedWindow = TRUE, skip = 0, verboseIter = FALSE, returnData = TRUE, returnResamp = "final",.....)
用kernlab包中的spam數據來進行實驗app
(篇幅有限,僅爲部分預測結果)dom