Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Udfordring: Imputering af Manglende Værdier | Forbehandling af Data med Scikit-learn
Introduktion til Maskinlæring med Python

bookUdfordring: Imputering af Manglende Værdier

Klassen SimpleImputer erstatter automatisk manglende værdier.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Væsentlige parametre:

  • missing_value: pladsholder behandlet som manglende (standard np.nan);
  • strategy: metode til udfyldning af huller (standard 'mean');
  • fill_value: anvendes når strategy='constant'.

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

Valg af metode til udfyldning af manglende data er afgørende. En almindelig tilgang:

  • numeriske træk → gennemsnit;
  • kategoriske træk → hyppigste værdi.

Muligheder for strategy:

  • 'mean' — udfyld med gennemsnit;
  • 'median' — udfyld med median;
  • 'most_frequent' — udfyld med typetal;
  • 'constant' — udfyld med en angivet værdi via fill_value.

missing_values definerer hvilke værdier, der behandles som manglende (standard NaN, men kan være '' eller et andet mærke).

Note
Bemærk

SimpleImputer forventer en DataFrame, ikke en Series. En enkeltkolonne-DataFrame skal vælges med dobbelte klammer:

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

fit_transform() returnerer et 2D-array, men tildeling tilbage til en DataFrame-kolonne kræver et 1D-array. Udflad resultatet ved at bruge .ravel():

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

Swipe to start coding

Du får en DataFrame df, der indeholder pingvindata. Kolonnen 'sex' har manglende værdier. Udfyld dem ved hjælp af den mest hyppige kategori.

  1. Importér SimpleImputer;
  2. Opret en imputer med strategy='most_frequent';
  3. Anvend den på df[['sex']];
  4. Tildel de imputerede værdier tilbage til df['sex'].

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 4
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

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

bookUdfordring: Imputering af Manglende Værdier

Stryg for at vise menuen

Klassen SimpleImputer erstatter automatisk manglende værdier.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Væsentlige parametre:

  • missing_value: pladsholder behandlet som manglende (standard np.nan);
  • strategy: metode til udfyldning af huller (standard 'mean');
  • fill_value: anvendes når strategy='constant'.

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

Valg af metode til udfyldning af manglende data er afgørende. En almindelig tilgang:

  • numeriske træk → gennemsnit;
  • kategoriske træk → hyppigste værdi.

Muligheder for strategy:

  • 'mean' — udfyld med gennemsnit;
  • 'median' — udfyld med median;
  • 'most_frequent' — udfyld med typetal;
  • 'constant' — udfyld med en angivet værdi via fill_value.

missing_values definerer hvilke værdier, der behandles som manglende (standard NaN, men kan være '' eller et andet mærke).

Note
Bemærk

SimpleImputer forventer en DataFrame, ikke en Series. En enkeltkolonne-DataFrame skal vælges med dobbelte klammer:

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

fit_transform() returnerer et 2D-array, men tildeling tilbage til en DataFrame-kolonne kræver et 1D-array. Udflad resultatet ved at bruge .ravel():

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

Swipe to start coding

Du får en DataFrame df, der indeholder pingvindata. Kolonnen 'sex' har manglende værdier. Udfyld dem ved hjælp af den mest hyppige kategori.

  1. Importér SimpleImputer;
  2. Opret en imputer med strategy='most_frequent';
  3. Anvend den på df[['sex']];
  4. Tildel de imputerede værdier tilbage til df['sex'].

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 4
single

single

some-alt