Dejo mi código
import matplotlib.pyplot as plt
from sklearn.datasets import load_diabetes
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
# Cargar datos
diabetes = load_diabetes()
X = diabetes.data
y = diabetes.target
# Dividir datos
X_train, X_test, y_train, y_test = train_test_split(
X, y,
test_size=0.3,
random_state=42
)
# Crear modelo
modelo = RandomForestRegressor(random_state=42)
# Entrenar
modelo.fit(X_train, y_train)
# Obtener importancia
importancia = modelo.feature_importances_
# Mostrar importancia
for nombre, valor in zip(diabetes.feature_names, importancia):
print(f"{nombre}: {valor:.3f}")
# Gráfico
plt.figure(figsize=(8,5))
plt.barh(diabetes.feature_names, importancia)
plt.title("Importancia de las características")
plt.xlabel("Importancia")
plt.show()