Aquí tienes un ejemplo completo y claro de entrenamiento de un modelo de clasificación con árbol de decisión, usando Python y scikit-learn.
✅ Ejemplo paso a paso: Clasificación con Árbol de Decisión
Usaremos el dataset Iris como ejemplo.
1. Importar librerías
from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report, accuracy_score
2. Cargar datos
iris = load_iris()
X = iris.data # variables predictoras
y = iris.target # variable objetivo (0, 1, 2)
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
)
4. Entrenar el árbol de decisión
clf = DecisionTreeClassifier(criterion='gini', max_depth=3, random_state=42)
clf.fit(X_train, y_train)
5. Predecir y evaluar
y_pred = clf.predict(X_test)
print("Accuracy:", accuracy_score(y_test, y_pred))
print("\nReporte de clasificación:\n", classification_report(y_test, y_pred))
6. (Opcional) Visualizar el árbol
import matplotlib.pyplot as plt
from sklearn.tree import plot_tree
plt.figure(figsize=(12, 6))
plot_tree(clf, feature_names=iris.feature_names, class_names=iris.target_names, filled=True)
plt.show()
🔍 ¿Qué puedes modificar?
- Cambia
max_depth, criterion, min_samples_split, etc. para ver cómo afecta al rendimiento.
- Usa tus propios datos (
pd.read_csv(...)) y reemplaza X e y.