Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Asuntojen Hintojen Ennustaminen | Yksinkertainen Lineaarinen Regressio
Lineaarinen Regressio Pythonilla

Haaste: Asuntojen Hintojen Ennustaminen

Seuraavaksi rakennetaan käytännön esimerkki regressiomallista. Käytössäsi on tiedosto houses_simple.csv, joka sisältää tietoja asuntojen hinnoista sekä pinta-alasta ominaisuutena.

1234
import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_simple.csv') print(df.head())

Seuraava vaihe on muuttujien määrittäminen ja aineiston visualisointi:

123456789
import pandas as pd import matplotlib.pyplot as plt df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_simple.csv') X = df['square_feet'] y = df['price'] plt.scatter(X, y, alpha=0.5) plt.show()

Esimerkissä henkilön pituudesta oli paljon helpompi kuvitella viiva, joka sopii hyvin aineistoon.

Nyt kuitenkin datassamme on huomattavasti enemmän vaihtelua, koska kohdearvo riippuu monista muista tekijöistä, kuten iästä, sijainnista, sisustuksesta jne. Tehtävänä on kuitenkin rakentaa viiva, joka sopii parhaiten käytettävissä olevaan dataan; se näyttää trendin. Tätä varten tulisi käyttää OLS-luokkaa. Pian opimme, miten lisätä enemmän ominaisuuksia, mikä parantaa ennustetta!

OLS-luokka
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 5
single

single

Haaste: Asuntojen Hintojen Ennustaminen

Pyyhkäise näyttääksesi valikon

Seuraavaksi rakennetaan käytännön esimerkki regressiomallista. Käytössäsi on tiedosto houses_simple.csv, joka sisältää tietoja asuntojen hinnoista sekä pinta-alasta ominaisuutena.

1234
import pandas as pd df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_simple.csv') print(df.head())

Seuraava vaihe on muuttujien määrittäminen ja aineiston visualisointi:

123456789
import pandas as pd import matplotlib.pyplot as plt df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/houses_simple.csv') X = df['square_feet'] y = df['price'] plt.scatter(X, y, alpha=0.5) plt.show()

Esimerkissä henkilön pituudesta oli paljon helpompi kuvitella viiva, joka sopii hyvin aineistoon.

Nyt kuitenkin datassamme on huomattavasti enemmän vaihtelua, koska kohdearvo riippuu monista muista tekijöistä, kuten iästä, sijainnista, sisustuksesta jne. Tehtävänä on kuitenkin rakentaa viiva, joka sopii parhaiten käytettävissä olevaan dataan; se näyttää trendin. Tätä varten tulisi käyttää OLS-luokkaa. Pian opimme, miten lisätä enemmän ominaisuuksia, mikä parantaa ennustetta!

OLS-luokka
Tehtävä

Pyyhkäise aloittaaksesi koodauksen

  1. Aseta 'price'-taulukon df-sarake muuttujaan y.
  2. Luo X_tilde-matriisi käyttämällä add_constant()-kirjaston (tuotu nimellä statsmodels) sm-funktiota.
  3. Alusta OLS-olio ja kouluta se.
  4. Esikäsittele X_new-taulukko samalla tavalla kuin X.
  5. Ennusta kohdearvo X_new_tilde-matriisille.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 1. Luku 5
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt