No obtengo la diferencia entre rfobject$importance
y importance(rfobject)
en la columna MeanDecreaseAccuracy.
Ejemplo:
> data("iris")
> fit <- randomForest(Species~., data=iris, importance=TRUE)
> fit$importance
setosa versicolor virginica MeanDecreaseAccuracy MeanDecreaseGini
Sepal.Length 0.027078501 0.019418330 0.040497602 0.02898837 9.173648
Sepal.Width 0.008553449 0.001962036 0.006951771 0.00575489 2.472105
Petal.Length 0.313303381 0.291818815 0.280981959 0.29216790 41.284869
Petal.Width 0.349686983 0.318527008 0.270975757 0.31054451 46.323415
> importance(fit)
setosa versicolor virginica MeanDecreaseAccuracy MeanDecreaseGini
Sepal.Length 1.277324 1.632586 1.758101 1.2233029 9.173648
Sepal.Width 1.007943 0.252736 1.014141 0.6293145 2.472105
Petal.Length 3.685513 4.434083 4.133621 2.5139980 41.284869
Petal.Width 3.896375 4.421567 4.385642 2.5371353 46.323415
>
Obtengo diferentes valores de MeanDecreaseAccuracy pero tengo el mismo orden para las variables de importancia ( fit$importance
tanto como para importance(fit)
):
Pétalo Ancho
Pétalo Longitud
Sepal longitud
Ancho de sepal
Pero en otros conjuntos de datos a veces recibo diferentes órdenes. ¿Alguien puede explicar lo que está pasando aquí? ¿Es esto posiblemente un error?
Editar (en respuesta a Martin O'Leary )
¡Bien gracias! Noté algo más.
Echando un vistazo a la rfcv()
función, noté la línea:
impvar <- (1:p)[order(all.rf$importance[, 1], decreasing = TRUE)]
con esta línea elegimos la primera columna de la all.rf$importance
cual nos da el orden de las medidas específicas de la clase (para el primer factor ) calculadas como disminución de la media en precisión solamente. Esto no siempre tiene el mismo orden que la disminución media de la precisión en todas las clases ( MeanDecreaseAccuracy
). ¿No sería mejor elegir ya sea el MeanDecreaseAccuracy
o MeanDecreaseGini
columna, o mejor utilizando la importance()
-función de los valores escalados? Por lo tanto, tendríamos un número secuencialmente reducido de predictores clasificados por importancia variable (en todas las clases) y no solo clasificados por importancia variable para la primera clase.