Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Utfordring: Imputering av Manglende Verdier | Forbehandling av Data med Scikit-learn
Introduksjon til maskinlæring med Python

bookUtfordring: Imputering av Manglende Verdier

Klassen SimpleImputer erstatter manglende verdier automatisk.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Viktige parametere:

  • missing_value: plassholder som behandles som manglende (standard np.nan);
  • strategy: metode for å fylle hull ('mean' som standard);
  • fill_value: brukes når strategy='constant'.

Som en transformer tilbyr den metoder som .fit(), .transform() og .fit_transform().

Valg av metode for å fylle manglende data er avgjørende. En vanlig tilnærming:

  • numeriske egenskaper → gjennomsnitt;
  • kategoriske egenskaper → mest vanlige verdi.

Alternativer for strategy:

  • 'mean' — fyll med gjennomsnitt;
  • 'median' — fyll med median;
  • 'most_frequent' — fyll med modus;
  • 'constant' — fyll med en spesifisert verdi via fill_value.

missing_values definerer hvilke verdier som behandles som manglende (standard NaN, men kan være '' eller en annen markør).

Note
Merk

SimpleImputer forventer en DataFrame, ikke en Series. En DataFrame med én kolonne må velges med doble klammeparenteser:

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

fit_transform() returnerer et 2D-array, men å tilordne tilbake til en DataFrame-kolonne krever et 1D-array. Flat ut resultatet ved å bruke .ravel():

df['column'] = imputer.fit_transform(df[['column']]).ravel()
Oppgave

Swipe to start coding

Du har fått en DataFrame df med pingvindata. Kolonnen 'sex' har manglende verdier. Fyll inn disse ved å bruke den mest vanlige kategorien.

  1. Importer SimpleImputer;
  2. Opprett en imputer med strategy='most_frequent';
  3. Bruk den på df[['sex']];
  4. Tildel de imputerte verdiene tilbake til df['sex'].

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

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

Awesome!

Completion rate improved to 3.13

bookUtfordring: Imputering av Manglende Verdier

Sveip for å vise menyen

Klassen SimpleImputer erstatter manglende verdier automatisk.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Viktige parametere:

  • missing_value: plassholder som behandles som manglende (standard np.nan);
  • strategy: metode for å fylle hull ('mean' som standard);
  • fill_value: brukes når strategy='constant'.

Som en transformer tilbyr den metoder som .fit(), .transform() og .fit_transform().

Valg av metode for å fylle manglende data er avgjørende. En vanlig tilnærming:

  • numeriske egenskaper → gjennomsnitt;
  • kategoriske egenskaper → mest vanlige verdi.

Alternativer for strategy:

  • 'mean' — fyll med gjennomsnitt;
  • 'median' — fyll med median;
  • 'most_frequent' — fyll med modus;
  • 'constant' — fyll med en spesifisert verdi via fill_value.

missing_values definerer hvilke verdier som behandles som manglende (standard NaN, men kan være '' eller en annen markør).

Note
Merk

SimpleImputer forventer en DataFrame, ikke en Series. En DataFrame med én kolonne må velges med doble klammeparenteser:

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

fit_transform() returnerer et 2D-array, men å tilordne tilbake til en DataFrame-kolonne krever et 1D-array. Flat ut resultatet ved å bruke .ravel():

df['column'] = imputer.fit_transform(df[['column']]).ravel()
Oppgave

Swipe to start coding

Du har fått en DataFrame df med pingvindata. Kolonnen 'sex' har manglende verdier. Fyll inn disse ved å bruke den mest vanlige kategorien.

  1. Importer SimpleImputer;
  2. Opprett en imputer med strategy='most_frequent';
  3. Bruk den på df[['sex']];
  4. Tildel de imputerte verdiene tilbake til df['sex'].

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 4
single

single

some-alt