This is documentation for an old release of Scikit-learn (version 1.4). Try the latest stable release (version 1.6) or development (unstable) versions.
Note
Go to the end to download the full example code or to run this example in your browser via JupyterLite or Binder
Recursive feature elimination¶
A recursive feature elimination example showing the relevance of pixels in a digit classification task.
Note
See also Recursive feature elimination with cross-validation

import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.feature_selection import RFE
from sklearn.svm import SVC
# Load the digits dataset
digits = load_digits()
X = digits.images.reshape((len(digits.images), -1))
y = digits.target
# Create the RFE object and rank each pixel
svc = SVC(kernel="linear", C=1)
rfe = RFE(estimator=svc, n_features_to_select=1, step=1)
rfe.fit(X, y)
ranking = rfe.ranking_.reshape(digits.images[0].shape)
# Plot pixel ranking
plt.matshow(ranking, cmap=plt.cm.Blues)
plt.colorbar()
plt.title("Ranking of pixels with RFE")
plt.show()
Total running time of the script: (0 minutes 3.646 seconds)
Related examples

Various Agglomerative Clustering on a 2D embedding of digits
Various Agglomerative Clustering on a 2D embedding of digits

Label Propagation digits: Demonstrating performance
Label Propagation digits: Demonstrating performance