¡Perfecto! Aquí tienes una guía clara y práctica para el entrenamiento de tu primer modelo de Random Forest con scikit-learn usando un dataset real:
🔧 Paso 1: Importar librerías necesarias
from sklearn.ensemble import RandomForestClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report, accuracy_score, confusion_matrix
import matplotlib.pyplot as plt
import seaborn as sns
📥 Paso 2: Cargar y explorar los datos
# Dataset clásico: Iris
iris = load_iris()
X = iris.data
y = iris.target
# Opcional: ver forma de los datos
print("Shape X:", X.shape)
print("Shape y:", y.shape)
✂️ Paso 3: Dividir en entrenamiento y prueba
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
🌲 Paso 4: Crear y entrenar el modelo Random Forest
rf_model = RandomForestClassifier(n_estimators=100, random_state=42)
rf_model.fit(X_train, y_train)
📈 Paso 5: Realizar predicciones
y_pred = rf_model.predict(X_test)
✅ Paso 6: Evaluar el modelo
print("Accuracy:", accuracy_score(y_test, y_pred))
print("\nClassification Report:\n", classification_report(y_test, y_pred))
print("\nConfusion Matrix:\n", confusion_matrix(y_test, y_pred))
🔍 Paso 7: Visualizar importancia de características
feature_importances = rf_model.feature_importances_
feature_names = iris.feature_names
sns.barplot(x=feature_importances, y=feature_names)
plt.title("Importancia de las características")
plt.xlabel("Importancia")
plt.ylabel("Característica")
plt.show()
🎉 Resultado:
Con el dataset Iris, deberías obtener una precisión bastante alta (cerca o superior al 95%), y podrás ver qué variables fueron más importantes para la clasificación.