randomForest 會根據變量的類型來決定regression
或classification
。class(iris$Species)
是 factor,因此是classification
。dom
iris.rf$type [1] "classification"
data(iris) set.seed(111) ind <- sample(2, nrow(iris), replace = TRUE, prob=c(0.8, 0.2)) iris.rf <- randomForest(formula = Species ~ ., data=iris[ind == 1,]) iris.pred <- predict(object = iris.rf, newdata = iris[ind == 2,]) table(observed = iris[ind==2, "Species"], predicted = iris.pred)
formula
: Species ~
意味着 Species 是response,data
中的其餘變量都是predictornewdata
: 能夠不用指明 predictor 和 responsextest = subset(test_data, select=-y)
ytest = test_data$y
rest
ytest= subset(test_data, select=y)
會報錯code
注意:一旦提供了xtest
,keep.forest
默認會被設置爲FALSE
,trees不會保存,模型中包含xtest
的預測值,可是模型不能用來predict。orm
localImp
計算的是,針對每一個case,不一樣變量的importance。
importance
統計的是總體而言,不一樣變量的importance。ci