Lineaarisen Regressiomallin Rakentaminen Statsmodels-Kirjastolla
Pyyhkäise näyttääksesi valikon
Lineaarisen regressiomallin rakentaminen
Statsmodels-kirjastossa OLS-luokkaa voidaan käyttää lineaarisen regressiomallin luomiseen.
Ensin täytyy alustaa OLS-luokan olio käyttämällä
sm.OLS(y, X_tilde).
Tämän jälkeen malli opetetaan fit()-metodilla.
model = sm.OLS(y, X_tilde)
model = model.fit()
Tämä vastaa seuraavaa:
model = sm.OLS(y, X_tilde).fit()
OLS-luokan konstruktori odottaa tiettyä taulukkoa X_tilde syötteenä, kuten näimme normaaliyhtälössä. Siksi sinun täytyy muuntaa X-taulukko muotoon X_tilde. Tämä onnistuu käyttämällä funktiota sm.add_constant().
Parametrien löytäminen
Kun malli on opetettu, voit helposti tarkastella parametreja params-attribuutin avulla.
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)
Ennusteiden tekeminen
Uusien havaintojen ennustaminen onnistuu helposti predict()-metodilla, mutta myös näiden syötteiden esikäsittely on tarpeen:
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))
Yhteenvetotietojen hakeminen
Kuten olet ehkä huomannut, OLS-luokan käyttö ei ole yhtä suoraviivaista kuin polyfit()-funktion. OLS:n käytössä on kuitenkin etunsa. Mallin koulutuksen aikana lasketaan runsaasti tilastollista tietoa. Näihin tietoihin pääsee käsiksi summary()-metodin avulla.
1print(model.summary())
Tässä on paljon tilastotietoa. Käsittelemme taulukon tärkeimmät osat myöhemmissä osioissa.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme