ahyahya1616/fast_api_classification_air
0
1# train_model.py2import pandas as pd3from sklearn.model_selection import train_test_split4from sklearn.ensemble import RandomForestClassifier5import joblib6import numpy as np7 8# Re-création du dataset9np.random.seed(42)10rows = []11for i in range(100):12 target = 0 if i < 50 else 113 if target == 0:14 co2 = np.random.randint(380, 800)15 pm25 = np.random.randint(5, 25)16 temp = np.random.randint(18, 24)17 hum = np.random.randint(35, 50)18 else:19 co2 = np.random.randint(1000, 2500)20 pm25 = np.random.randint(35, 120)21 temp = np.random.randint(24, 35)22 hum = np.random.randint(55, 80)23 rows.append([co2, pm25, temp, hum, target])24 25df = pd.DataFrame(rows, columns=['co2', 'pm25', 'temp', 'hum', 'target'])26 27# Séparer les features et la target28X = df[['co2', 'pm25', 'temp', 'hum']]29y = df['target']30 31# Split train/test32X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)33 34# Entraîner le modèle35model = RandomForestClassifier(n_estimators=100, random_state=42)36model.fit(X_train, y_train)37 38# Sauvegarder le modèle39joblib.dump(model, "model_air_quality.joblib")40print("Modèle entraîné et sauvegardé ✅")41 