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

single

Udfordring: Imputering af manglende værdier

Stryg for at vise menuen

SimpleImputer-klassen erstatter manglende værdier automatisk.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Væsentlige parametre:

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

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

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

  • numeriske egenskaber → gennemsnit;
  • kategoriske egenskaber → hyppigste værdi.

strategy-muligheder:

  • '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 en anden markør).

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 med .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 at bruge 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 imputede 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

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

some-alt