Construction de la Régression Linéaire avec Statsmodels
Construction d’un modèle de régression linéaire
Dans statsmodels, la classe OLS peut être utilisée pour créer un modèle de régression linéaire.
Il faut d’abord initialiser un objet de la classe OLS en utilisant
sm.OLS(y, X_tilde).
Ensuite, l’entraîner avec la méthode fit().
model = sm.OLS(y, X_tilde)
model = model.fit()
Ce qui est équivalent à :
model = sm.OLS(y, X_tilde).fit()
Le constructeur de la classe OLS attend en entrée un tableau spécifique X_tilde, que nous avons vu dans l’équation normale. Il est donc nécessaire de convertir votre tableau X en X_tilde. Cela peut être réalisé à l’aide de la fonction sm.add_constant().
Recherche des paramètres
Une fois le modèle entraîné, il est possible d'accéder facilement aux paramètres à l'aide de l'attribut params.
123456789import statsmodels.api as sm import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/simple_height_data.csv') X, y = df['Father'], df['Height'] X_tilde = sm.add_constant(X) model = sm.OLS(y, X_tilde).fit() beta_0, beta_1 = model.params print(beta_0, beta_1)
Réalisation des prédictions
De nouvelles instances peuvent être prédites facilement à l'aide de la méthode predict(), mais il est également nécessaire de prétraiter les entrées correspondantes :
12345import numpy as np X_new = np.array([65, 70, 75]) X_new_tilde = sm.add_constant(X_new) print(model.predict(X_new_tilde))
Obtention du résumé
Comme vous l'avez probablement remarqué, l'utilisation de la classe OLS n'est pas aussi simple que la fonction polyfit(). Cependant, l'utilisation de OLS présente des avantages. Lors de l'entraînement, de nombreuses informations statistiques sont calculées. Ces informations sont accessibles via la méthode summary().
1print(model.summary())
Cela fait beaucoup de statistiques. Nous aborderons les parties les plus importantes du tableau dans les sections suivantes.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 5.26
Construction de la Régression Linéaire avec Statsmodels
Glissez pour afficher le menu
Construction d’un modèle de régression linéaire
Dans statsmodels, la classe OLS peut être utilisée pour créer un modèle de régression linéaire.
Il faut d’abord initialiser un objet de la classe OLS en utilisant
sm.OLS(y, X_tilde).
Ensuite, l’entraîner avec la méthode fit().
model = sm.OLS(y, X_tilde)
model = model.fit()
Ce qui est équivalent à :
model = sm.OLS(y, X_tilde).fit()
Le constructeur de la classe OLS attend en entrée un tableau spécifique X_tilde, que nous avons vu dans l’équation normale. Il est donc nécessaire de convertir votre tableau X en X_tilde. Cela peut être réalisé à l’aide de la fonction sm.add_constant().
Recherche des paramètres
Une fois le modèle entraîné, il est possible d'accéder facilement aux paramètres à l'aide de l'attribut params.
123456789import statsmodels.api as sm import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/simple_height_data.csv') X, y = df['Father'], df['Height'] X_tilde = sm.add_constant(X) model = sm.OLS(y, X_tilde).fit() beta_0, beta_1 = model.params print(beta_0, beta_1)
Réalisation des prédictions
De nouvelles instances peuvent être prédites facilement à l'aide de la méthode predict(), mais il est également nécessaire de prétraiter les entrées correspondantes :
12345import numpy as np X_new = np.array([65, 70, 75]) X_new_tilde = sm.add_constant(X_new) print(model.predict(X_new_tilde))
Obtention du résumé
Comme vous l'avez probablement remarqué, l'utilisation de la classe OLS n'est pas aussi simple que la fonction polyfit(). Cependant, l'utilisation de OLS présente des avantages. Lors de l'entraînement, de nombreuses informations statistiques sont calculées. Ces informations sont accessibles via la méthode summary().
1print(model.summary())
Cela fait beaucoup de statistiques. Nous aborderons les parties les plus importantes du tableau dans les sections suivantes.
Merci pour vos commentaires !