Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Puuttuvien Arvojen Imputointi | Datan Esikäsittely Scikit-learnilla
Quizzes & Challenges
Quizzes
Challenges
/
Johdatus koneoppimiseen Pythonilla

bookHaaste: Puuttuvien Arvojen Imputointi

SimpleImputer-luokka korvaa puuttuvat arvot automaattisesti.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Tärkeimmät parametrit:

  • missing_value: tunniste, jota pidetään puuttuvana (oletus np.nan);
  • strategy: menetelmä aukkojen täyttämiseen (oletus 'mean');
  • fill_value: käytetään, kun strategy='constant'.

Transformerina se tarjoaa metodit kuten .fit(), .transform() ja .fit_transform().

Puuttuvien arvojen täyttötavan valinta on oleellista. Yleinen lähestymistapa:

  • numeeriset ominaisuudet → keskiarvo;
  • kategoriset ominaisuudet → yleisin arvo.

strategy-vaihtoehdot:

  • 'mean' — täyttö keskiarvolla;
  • 'median' — täyttö mediaanilla;
  • 'most_frequent' — täyttö moodilla;
  • 'constant' — täyttö määritetyllä arvolla fill_value.

missing_values määrittää, mitkä arvot tulkitaan puuttuviksi (oletus NaN, mutta voi olla myös '' tai muu merkki).

Note
Huomio

SimpleImputer odottaa DataFrame-rakennetta, ei Seriesiä. Yksisarakkeinen DataFrame valitaan kaksois-sulkeilla:

imputer.fit_transform(df[['column']])

fit_transform() palauttaa 2D-taulukon, mutta DataFrame-sarakkeeseen tallentaminen vaatii 1D-taulukon. Tasoita tulos käyttämällä .ravel():

df['column'] = imputer.fit_transform(df[['column']]).ravel()
Tehtävä

Swipe to start coding

Sinulle annetaan DataFrame nimeltä df, joka sisältää pingviinien tietoja. Sarakkeessa 'sex' on puuttuvia arvoja. Täydennä ne käyttämällä yleisintä kategoriaa.

  1. Tuo SimpleImputer;
  2. Luo imputteri käyttäen strategy='most_frequent';
  3. Käytä sitä df[['sex']] -sarakkeeseen;
  4. Aseta imputoidut arvot takaisin df['sex'] -sarakkeeseen.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 4
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Suggested prompts:

Can you explain how to use SimpleImputer with categorical data?

What happens if my data has multiple types of missing value markers?

Can you show an example of using a different strategy, like 'median'?

close

bookHaaste: Puuttuvien Arvojen Imputointi

Pyyhkäise näyttääksesi valikon

SimpleImputer-luokka korvaa puuttuvat arvot automaattisesti.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Tärkeimmät parametrit:

  • missing_value: tunniste, jota pidetään puuttuvana (oletus np.nan);
  • strategy: menetelmä aukkojen täyttämiseen (oletus 'mean');
  • fill_value: käytetään, kun strategy='constant'.

Transformerina se tarjoaa metodit kuten .fit(), .transform() ja .fit_transform().

Puuttuvien arvojen täyttötavan valinta on oleellista. Yleinen lähestymistapa:

  • numeeriset ominaisuudet → keskiarvo;
  • kategoriset ominaisuudet → yleisin arvo.

strategy-vaihtoehdot:

  • 'mean' — täyttö keskiarvolla;
  • 'median' — täyttö mediaanilla;
  • 'most_frequent' — täyttö moodilla;
  • 'constant' — täyttö määritetyllä arvolla fill_value.

missing_values määrittää, mitkä arvot tulkitaan puuttuviksi (oletus NaN, mutta voi olla myös '' tai muu merkki).

Note
Huomio

SimpleImputer odottaa DataFrame-rakennetta, ei Seriesiä. Yksisarakkeinen DataFrame valitaan kaksois-sulkeilla:

imputer.fit_transform(df[['column']])

fit_transform() palauttaa 2D-taulukon, mutta DataFrame-sarakkeeseen tallentaminen vaatii 1D-taulukon. Tasoita tulos käyttämällä .ravel():

df['column'] = imputer.fit_transform(df[['column']]).ravel()
Tehtävä

Swipe to start coding

Sinulle annetaan DataFrame nimeltä df, joka sisältää pingviinien tietoja. Sarakkeessa 'sex' on puuttuvia arvoja. Täydennä ne käyttämällä yleisintä kategoriaa.

  1. Tuo SimpleImputer;
  2. Luo imputteri käyttäen strategy='most_frequent';
  3. Käytä sitä df[['sex']] -sarakkeeseen;
  4. Aseta imputoidut arvot takaisin df['sex'] -sarakkeeseen.

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 2. Luku 4
single

single

some-alt