Utfordring: Imputering av Manglende Verdier
Klassen SimpleImputer
er utviklet for å håndtere manglende data ved automatisk å erstatte manglende verdier.
from sklearn.impute import SimpleImputer
imputer = SimpleImputer()
Ved initialisering kan den også tilpasses ved å angi dens parametere:
missing_value
: angir plassholderen for manglende verdier. Standardverdien ernp.nan
;strategy
: strategien som brukes for å imputere manglende verdier.'mean'
er standardverdien;fill_value
: Angir verdien som skal brukes for å fylle inn manglende verdier nårstrategy
er'constant'
. Standardverdien erNone
.
Som en transformer har den følgende metoder:
Vi må imidlertid også velge hvilken verdi som skal brukes til imputering.
En vanlig tilnærming er å imputere manglende numeriske verdier med gjennomsnittet og manglende kategoriske verdier med modus (den mest forekommende verdien), da slik imputering i liten grad påvirker fordelingen av verdiene.
Tilnærmingen kan styres ved å bruke parameteren strategy
:
strategy='mean'
: imputerer med gjennomsnittet for hver kolonne;strategy='median'
: imputerer med medianen for hver kolonne;strategy='most_frequent'
: imputerer med modus for hver kolonne;strategy='constant'
: imputerer med konstant verdi angitt i parameterenfill_value
.
Parameteren missing_values
styrer hvilke verdier som anses som manglende. Som standard er dette NaN
, men i ulike datasett kan det være en tom streng ''
eller noe annet.
Når du bruker .fit_transform()
-metoden til SimpleImputer
, produserer den et 2D-array som output. Når du derimot skal oppdatere en enkelt kolonne i en pandas DataFrame, trenger du et 1D-array (eller en Series).
df['column'] = ... # 1D array or Series expected
imputer.fit_transform(df[['column']]) # Returns a 2D array
For å konvertere 2D-arrayet til et 1D-array som passer for tildeling til en DataFrame-kolonne, kan du bruke .ravel()
-metoden. Denne metoden flater ut arrayet. Slik kan du oppdatere en kolonne etter imputering:
df['column'] = imputer.fit_transform(df[['column']]).ravel()
Denne tilnærmingen sikrer at de imputerte verdiene er korrekt formatert og tilordnet tilbake til DataFrame-en.
Swipe to start coding
Din oppgave er å imputere NaN
-verdiene i 'sex'
-kolonnen ved hjelp av SimpleImputer
. Siden du arbeider med en kategorisk kolonne, skal du erstatte nullverdiene med den mest hyppige verdien (den vanligste tilnærmingen).
- Importer
SimpleImputer
. - Opprett et
SimpleImputer
-objekt med ønsketstrategy
. - Imputer de manglende verdiene i
'sex'
-kolonnen ved å brukeimputer
-objektet.
Løsning
Flott! Vi har håndtert problemet med manglende verdier i datasettet vårt. Vi fjernet radene med mer enn én nullverdi og imputerte 'sex'
-kolonnen med den mest forekommende verdien – MALE
.
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 3.13
Utfordring: Imputering av Manglende Verdier
Sveip for å vise menyen
Klassen SimpleImputer
er utviklet for å håndtere manglende data ved automatisk å erstatte manglende verdier.
from sklearn.impute import SimpleImputer
imputer = SimpleImputer()
Ved initialisering kan den også tilpasses ved å angi dens parametere:
missing_value
: angir plassholderen for manglende verdier. Standardverdien ernp.nan
;strategy
: strategien som brukes for å imputere manglende verdier.'mean'
er standardverdien;fill_value
: Angir verdien som skal brukes for å fylle inn manglende verdier nårstrategy
er'constant'
. Standardverdien erNone
.
Som en transformer har den følgende metoder:
Vi må imidlertid også velge hvilken verdi som skal brukes til imputering.
En vanlig tilnærming er å imputere manglende numeriske verdier med gjennomsnittet og manglende kategoriske verdier med modus (den mest forekommende verdien), da slik imputering i liten grad påvirker fordelingen av verdiene.
Tilnærmingen kan styres ved å bruke parameteren strategy
:
strategy='mean'
: imputerer med gjennomsnittet for hver kolonne;strategy='median'
: imputerer med medianen for hver kolonne;strategy='most_frequent'
: imputerer med modus for hver kolonne;strategy='constant'
: imputerer med konstant verdi angitt i parameterenfill_value
.
Parameteren missing_values
styrer hvilke verdier som anses som manglende. Som standard er dette NaN
, men i ulike datasett kan det være en tom streng ''
eller noe annet.
Når du bruker .fit_transform()
-metoden til SimpleImputer
, produserer den et 2D-array som output. Når du derimot skal oppdatere en enkelt kolonne i en pandas DataFrame, trenger du et 1D-array (eller en Series).
df['column'] = ... # 1D array or Series expected
imputer.fit_transform(df[['column']]) # Returns a 2D array
For å konvertere 2D-arrayet til et 1D-array som passer for tildeling til en DataFrame-kolonne, kan du bruke .ravel()
-metoden. Denne metoden flater ut arrayet. Slik kan du oppdatere en kolonne etter imputering:
df['column'] = imputer.fit_transform(df[['column']]).ravel()
Denne tilnærmingen sikrer at de imputerte verdiene er korrekt formatert og tilordnet tilbake til DataFrame-en.
Swipe to start coding
Din oppgave er å imputere NaN
-verdiene i 'sex'
-kolonnen ved hjelp av SimpleImputer
. Siden du arbeider med en kategorisk kolonne, skal du erstatte nullverdiene med den mest hyppige verdien (den vanligste tilnærmingen).
- Importer
SimpleImputer
. - Opprett et
SimpleImputer
-objekt med ønsketstrategy
. - Imputer de manglende verdiene i
'sex'
-kolonnen ved å brukeimputer
-objektet.
Løsning
Flott! Vi har håndtert problemet med manglende verdier i datasettet vårt. Vi fjernet radene med mer enn én nullverdi og imputerte 'sex'
-kolonnen med den mest forekommende verdien – MALE
.
Takk for tilbakemeldingene dine!
Awesome!
Completion rate improved to 3.13single