# entrenar_modelo.py """ Entrena y evalúa un modelo simple para predecir quinielas (1/X/2). """ import pandas as pd from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import classification_report, accuracy_score import os # Cargar datos DATA_PATH = os.path.join(os.path.dirname(__file__), '../data/espana/partidos_todos.csv') df = pd.read_csv(DATA_PATH) # Features simples: diferencia de goles históricos entre local y visitante # (Para un modelo más avanzado, se pueden agregar más features) df['dif_goles'] = df['goles_local'] - df['goles_visitante'] # Features y etiquetas X = df[['dif_goles']] y = df['resultado'] # Separar en train/test X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # Modelo clf = RandomForestClassifier(n_estimators=100, random_state=42) clf.fit(X_train, y_train) # Predicción y evaluación y_pred = clf.predict(X_test) print("Accuracy:", accuracy_score(y_test, y_pred)) print("\nClassification report:\n", classification_report(y_test, y_pred))