randomForest R 学习笔记
object type
randomForest 会根据变量的类型来决定regression
或classification
。class(iris$Species)
是 factor,所以是classification
。
iris.rf$type
[1] "classification"
iris example
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 和 response
test
xtest = subset(test_data, select=-y)
ytest = test_data$y
ytest= subset(test_data, select=y)
会报错
注意:一旦提供了xtest
,keep.forest
默认会被设置为FALSE
,trees不会保存,模型中包含xtest
的预测值,但是模型不能用来predict。
local importance
localImp
计算的是,针对每个case,不同变量的importance。
importance
统计的是整体而言,不同变量的importance。