Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Utmaning: Imputera Saknade Värden | Förbehandling av Data med Scikit-learn
Quizzes & Challenges
Quizzes
Challenges
/
Introduktion till maskininlärning med Python

bookUtmaning: Imputera Saknade Värden

Klassen SimpleImputer ersätter saknade värden automatiskt.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Dess viktigaste parametrar:

  • missing_value: platshållare som behandlas som saknad (standard np.nan);
  • strategy: metod för att fylla luckor ('mean' som standard);
  • fill_value: används när strategy='constant'.

Som en transformer tillhandahåller den metoder som .fit(), .transform() och .fit_transform().

Att välja hur saknade data ska fyllas är avgörande. En vanlig metod:

  • numeriska egenskaper → medelvärde;
  • kategoriska egenskaper → mest frekventa värdet.

Alternativ för strategy:

  • 'mean' — fyll med medelvärde;
  • 'median' — fyll med median;
  • 'most_frequent' — fyll med typvärde;
  • 'constant' — fyll med ett angivet värde via fill_value.

missing_values definierar vilka värden som behandlas som saknade (standard NaN, men kan vara '' eller annan markör).

Note
Notera

SimpleImputer förväntar sig en DataFrame, inte en Series. En DataFrame med en kolumn måste väljas med dubbla hakparenteser:

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

fit_transform() returnerar en 2D-array, men tilldelning tillbaka till en DataFrame-kolumn kräver en 1D-array. Platta ut resultatet med .ravel():

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

Swipe to start coding

Du har fått en DataFrame df som innehåller pingvindata. Kolumnen 'sex' har saknade värden. Fyll dessa med den mest frekventa kategorin.

  1. Importera SimpleImputer;
  2. Skapa en imputerare med strategy='most_frequent';
  3. Applicera den på df[['sex']];
  4. Tilldela de imputerade värdena tillbaka till df['sex'].

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 4
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

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

bookUtmaning: Imputera Saknade Värden

Svep för att visa menyn

Klassen SimpleImputer ersätter saknade värden automatiskt.

from sklearn.impute import SimpleImputer
imputer = SimpleImputer()

Dess viktigaste parametrar:

  • missing_value: platshållare som behandlas som saknad (standard np.nan);
  • strategy: metod för att fylla luckor ('mean' som standard);
  • fill_value: används när strategy='constant'.

Som en transformer tillhandahåller den metoder som .fit(), .transform() och .fit_transform().

Att välja hur saknade data ska fyllas är avgörande. En vanlig metod:

  • numeriska egenskaper → medelvärde;
  • kategoriska egenskaper → mest frekventa värdet.

Alternativ för strategy:

  • 'mean' — fyll med medelvärde;
  • 'median' — fyll med median;
  • 'most_frequent' — fyll med typvärde;
  • 'constant' — fyll med ett angivet värde via fill_value.

missing_values definierar vilka värden som behandlas som saknade (standard NaN, men kan vara '' eller annan markör).

Note
Notera

SimpleImputer förväntar sig en DataFrame, inte en Series. En DataFrame med en kolumn måste väljas med dubbla hakparenteser:

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

fit_transform() returnerar en 2D-array, men tilldelning tillbaka till en DataFrame-kolumn kräver en 1D-array. Platta ut resultatet med .ravel():

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

Swipe to start coding

Du har fått en DataFrame df som innehåller pingvindata. Kolumnen 'sex' har saknade värden. Fyll dessa med den mest frekventa kategorin.

  1. Importera SimpleImputer;
  2. Skapa en imputerare med strategy='most_frequent';
  3. Applicera den på df[['sex']];
  4. Tilldela de imputerade värdena tillbaka till df['sex'].

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 4
single

single

some-alt