La régression est une technique statistique utilisée pour modéliser la relation entre une variable dépendante (ou variable cible) et une ou plusieurs variables indépendantes (ou variables explicatives). En Python, plusieurs bibliothèques permettent de développer des modèles de régression, telles que scikit-learn, pandas, et statsmodels. Dans ce texte, nous allons développer un modèle de régression linéaire pour prédire des tendances spécifiques à un sujet donné. Pour illustrer, nous utiliserons un ensemble de données hypothétique sur la production de véhicules de la société Matra.
### Introduction
Matra est une entreprise française emblématique qui a joué un rôle crucial dans l’industrie automobile et aérospatiale. Fondée en 1941, Matra a été impliquée dans la production de voitures de sport, de véhicules de transport en commun, et de composants aérospatiaux. Pour comprendre les tendances de production de Matra, nous allons développer un modèle de régression linéaire en utilisant Python.
### Préparation des Données
Tout d’abord, nous devons préparer les données. Pour cet exemple, nous utiliserons un ensemble de données hypothétique qui inclut des informations sur les années de production, le nombre de véhicules produits, et d’autres variables explicatives telles que les investissements en recherche et développement (R&D) et les ventes annuelles.
« `python
import pandas as pd
import numpy as np
# Création d’un DataFrame avec des données hypothétiques
data = {
‘Année’: [1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969],
‘Nombre de véhicules’: [1000, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000],
‘Investissement en R&D’: [100, 110, 120, 130, 140, 150, 160, 170, 180, 190],
‘Ventes annuelles’: [100000, 120000, 130000, 140000, 150000, 160000, 170000, 180000, 190000, 200000]
}
df = pd.DataFrame(data)
« `
### Prétraitement des Données
Avant de construire le modèle, nous devons prétraiter les données. Cela inclut la création de variables d’indice pour la variable temporelle (année) et la division des données en ensembles d’entraînement et de test.
« `python
# Création de variables d’indice
df[‘Année_indice’] = df[‘Année’] – df[‘Année’].min()
# Division des données en ensembles d’entraînement et de test
from sklearn.model_selection import train_test_split
X = df[[‘Année_indice’, ‘Investissement en R&D’, ‘Ventes annuelles’]]
y = df[‘Nombre de véhicules’]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
« `
### Construction du Modèle
Nous allons utiliser la régression linéaire de scikit-learn pour construire notre modèle.
« `python
from sklearn.linear_model import LinearRegression
# Création du modèle
model = LinearRegression()
# Entraînement du modèle
model.fit(X_train, y_train)
« `
### Évaluation du Modèle
Après avoir entraîné le modèle, nous devons l’évaluer pour voir comment il performe sur les données de test.
« `python
from sklearn.metrics import mean_squared_error, r2_score
# Prédiction sur les données de test
y_pred = model.predict(X_test)
# Calcul des métriques d’évaluation
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)
print(f’MSE: {mse}’)
print(f’R²: {r2}’)
« `
### Interprétation des Résultats
Le modèle de régression linéaire nous permet de comprendre comment les variables indépendantes (année, investissement en R&D, ventes annuelles) influencent le nombre de véhicules produits par Matra. Les coefficients du modèle indiquent la relation linéaire entre chaque variable indépendante et la variable dépendante.
« `python
# Affichage des coefficients du modèle
print(f’Coefficients du modèle: {model.coef_}’)
print(f’Intercept du modèle: {model.intercept_}’)
« `
### Conclusion
En utilisant un modèle de régression linéaire, nous avons pu prédire les tendances de production de véhicules de la société Matra. Les résultats montrent que les investissements en R&D et les ventes annuelles ont une influence significative sur le nombre de véhicules produits. Ce modèle peut être affiné et amélioré en ajoutant plus de variables explicatives et en utilisant des techniques de régression plus avanc