You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
SmartFit_Mobile/IA/modele_create.py

37 lines
1.3 KiB

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
from sklearn.preprocessing import LabelEncoder
# Charger les données
data = pd.read_csv('data\\data_emple.csv')
# Encoder les catégories 'category' et 'noteUser'
label_encoder = LabelEncoder()
data['category'] = label_encoder.fit_transform(data['category'])
data['noteUser'] = label_encoder.fit_transform(data['noteUser'])
# Sélectionner les caractéristiques pour l'entraînement du modèle
features = ['category', 'noteUser', 'distance', 'timeOfActivity', 'denivelePositif', 'speedAvg', 'bpmAvg']
# Diviser les données en ensembles d'entraînement et de test
train_data, test_data = train_test_split(data[features], test_size=0.2, random_state=42)
# Séparer les caractéristiques (X) de la cible (y)
X_train, y_train = train_data.drop('noteUser', axis=1), train_data['noteUser']
X_test, y_test = test_data.drop('noteUser', axis=1), test_data['noteUser']
# Créer et entraîner le modèle de régression linéaire
model = LinearRegression()
model.fit(X_train, y_train)
# Faire des prédictions sur l'ensemble de test
predictions = model.predict(X_test)
print(predictions)
# Évaluer le modèle
mse = mean_squared_error(y_test, predictions)
print(f'Mean Squared Error on Test Data: {mse}')