Lineaarisen Regressiomallin Rakentaminen Käyttäen Statsmodels-Kirjastoa
Lineaarisen regressiomallin rakentaminen
Statsmodels-kirjastossa OLS-luokkaa voidaan käyttää lineaarisen regressiomallin luomiseen.
Ensiksi 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ä on sama kuin:
model = sm.OLS(y, X_tilde).fit()
OLS-luokan konstruktori odottaa tietynlaista taulukkoa X_tilde syötteenä, kuten nähtiin normaaliyhtälössä. Siksi sinun täytyy muuntaa X-taulukko muotoon X_tilde. Tämä onnistuu käyttämällä sm.add_constant()-funktiota.
Parametrien löytäminen
Kun malli on opetettu, parametreihin pääsee helposti käsiksi 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 syötteet täytyy esikäsitellä:
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äminen ei ole yhtä helppoa kuin polyfit()-funktion. OLS:n käytössä on kuitenkin etuja. Mallin koulutuksen aikana lasketaan runsaasti tilastollista tietoa. Näihin tietoihin pääsee käsiksi summary()-metodilla.
1print(model.summary())
Tässä on paljon tilastotietoa. Käsittelemme taulukon tärkeimpiä osia myöhemmissä osioissa.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Mahtavaa!
Completion arvosana parantunut arvoon 5.26
Lineaarisen Regressiomallin Rakentaminen Käyttäen Statsmodels-Kirjastoa
Pyyhkäise näyttääksesi valikon
Lineaarisen regressiomallin rakentaminen
Statsmodels-kirjastossa OLS-luokkaa voidaan käyttää lineaarisen regressiomallin luomiseen.
Ensiksi 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ä on sama kuin:
model = sm.OLS(y, X_tilde).fit()
OLS-luokan konstruktori odottaa tietynlaista taulukkoa X_tilde syötteenä, kuten nähtiin normaaliyhtälössä. Siksi sinun täytyy muuntaa X-taulukko muotoon X_tilde. Tämä onnistuu käyttämällä sm.add_constant()-funktiota.
Parametrien löytäminen
Kun malli on opetettu, parametreihin pääsee helposti käsiksi 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 syötteet täytyy esikäsitellä:
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äminen ei ole yhtä helppoa kuin polyfit()-funktion. OLS:n käytössä on kuitenkin etuja. Mallin koulutuksen aikana lasketaan runsaasti tilastollista tietoa. Näihin tietoihin pääsee käsiksi summary()-metodilla.
1print(model.summary())
Tässä on paljon tilastotietoa. Käsittelemme taulukon tärkeimpiä osia myöhemmissä osioissa.
Kiitos palautteestasi!