2016-01-07 48 views
3

在插入符包,可以進行預測的中心和縮放在下面的示例中的火車功能:在預測之前是否有必要對數據進行集中和縮放?

knnFit <- train(Direction ~ ., data = training, method = "knn", 
       preProcess = c("center","scale")) 

設置在火車這種轉變應該給算法的性能進行更好的評估過程中重採樣。

在這種情況下,當我使用模型來預測新數據的響應時,是否應該關心居中和縮放,或者該操作是否包含在最終模型中?

以下操作是否足夠?

pred <- predict(knnFit, newdata = test) 

謝謝!

+0

不,以前你應該居中和縮放。 http://stackoverflow.com/questions/15468866/scaling-a-numeric-matrix-in-r-with-values-0-to-1和http://stackoverflow.com/questions/15215457/standardize-data-列式-R – PereG

回答

3

列車對象中指定的預處理將應用於新數據,而無需首先預處理新數據。所以你的操作就足夠了。

另請參閱下面的脫字符網站摘錄。純粹關於預處理也有一整段。絕對值得你通讀它的時間。您可以在這裏找到caret website

這些處理步驟將在任何預測施加 使用predict.train產生,extractPrediction或extractProbs(見 細節稍後在本文檔中)。預處理不會被 應用於直接使用對象$ finalModel對象的預測。

相關問題