RandomForestRegressor and feature_importances_ error
10,466
You are trying to use the attribute on the GridSearchCV object. Its not present there. What you actually need to do is to access the estimator on which the grid search is done.
Access the attribute by :
importances = CV_RFR_regr.best_estimator_.feature_importances_
Author by
Svarto
Updated on June 09, 2022Comments
-
Svarto almost 2 years
I am struggling to pull out the feature importances from my RandomForestRegressor, I get an:
AttributeError: 'GridSearchCV' object has no attribute 'feature_importances_'.
Anyone know why there is no attribute? According to documentation there should exist this attribute?
The full code:
from sklearn.ensemble import RandomForestRegressor from sklearn.model_selection import GridSearchCV #Running a RandomForestRegressor GridSearchCV to tune the model. parameter_candidates = { 'n_estimators' : [650, 700, 750, 800], 'min_samples_leaf' : [1, 2, 3], 'max_depth' : [10, 11, 12], 'min_samples_split' : [2, 3, 4, 5, 6] } RFR_regr = RandomForestRegressor() CV_RFR_regr = GridSearchCV(estimator=RFR_regr, param_grid=parameter_candidates, n_jobs=5, verbose=2) CV_RFR_regr.fit(X_train, y_train) #Predict with testing set y_pred = CV_RFR_regr.predict(X_test) #Extract feature importances importances = CV_RFR_regr.feature_importances_
-
Admin about 2 yearsYour answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.