Slik utfører du datarensing med Python og Pandaer

Slik Utforer Du Datarensing Med Python Og Pandaer



Å lære å rense dataene ved hjelp av Python og Pandas er avgjørende for alle som jobber med data. Datarensing brukes mest for nøyaktig analyse og modellering ved å fjerne feil og inkonsekvenser. Denne veiledningen går gjennom trinn-for-trinn-prosessen som viser oss hvordan vi skal håndtere de manglende dataene og oppdage eller identifisere uteliggere. Med Python og Pandas som våre verktøy, kan vi forvandle rotete data til ren, brukbar informasjon. Denne veiledningen hjelper oss også med å forbedre datakvaliteten vår og forberede den for analyse og beslutningstaking.

Rensing av data med Python og Pandas

Data er som byggesteinene for beslutningstaking i dag. Men forestill deg å ha en gruppe blokker i forskjellige former og størrelser fra denne samlingen; det er vanskelig å bygge noe meningsfullt. Det er her dataryddingen kommer inn for å hjelpe.

Denne guiden utforsker hvordan du renser dataene ved å bruke Pythons rammeverk som er Pandas for bedre beslutningstaking. Datarydding er også viktig, med tanke på at vi jobber med en liste over salgsposter for en butikk. Vi kan kanskje legge merke til noen manglende tall, rare datoer og gjentatte elementer uten grunn på listen. Hvis vi gjør beregningene eller poster basert på denne informasjonen, kan disse problemene ødelegge beregningene og spådommene våre. Datarensing hjelper til med å fikse disse problemene, og sikrer at dataene våre er nøyaktige og klare til bruk.







Datarydding inkluderer å håndtere de manglende dataene og hva du skal gjøre når noen data mangler, fjerne duplikatene, kvitte seg med kopierte ting, fikse datatypene, sørge for at alt er i riktig format, og håndtere uteliggere eller håndtere tallene som ikke passer inn. Disse feilene gjør at dataene ser like ut og standardiserer hvordan dataene fremstår.



For å komme i gang, sørg først for at vi har Python og Pandas installert. Vi kan gjøre dette ved å skrive kommandoene i datamaskinens terminal eller ledetekst. For å implementere kodene som er nevnt i denne veiledningen, kan vi bruke Python Pycharm IDE som er installert på systemet vårt eller online Python-plattformen som er 'Google Colab' og installere 'pip'-kommandoene for å installere de viktige bibliotekene.



La oss nå importere pandaer og laste inn prøvedataene våre. For dette eksemplet bruker vi Google Colab til å kjøre kodene. Så vi importerer først pandaer ved å skrive inn følgende kommando:





! pip installer pandaer

import pandaer som pd

import nusset som f.eks.

Deretter laster vi datasettet som vi ønsker å vise ved å bruke pd.read()-metoden som tar filbanen som inndataparameter.

# Last inn datasettet

data = pd. les_csv ( '/content/sample_data/california_housing_test.csv' )

# Vis de første par radene

skrive ut ( data. hode ( ) )



I det neste eksempelet bruker vi data om salg i en liten butikk. For å håndtere de manglende dataene mangler informasjonen noen ganger i dataene våre. Vi kaller disse manglende delene som 'NaN' (som betyr 'ikke et tall'). For å finne disse manglende verdiene i Python-skriptet laster vi først datasettet som vi gjorde i forrige eksempel. Deretter finner vi eventuelle manglende verdier i datasettet ved å bruke funksjonen 'missing_values ​​= data.isnull().sum()'. Denne funksjonen finner alle de manglende verdiene i datasettet. Deretter viser vi dem ved å bruke utskriftsfunksjonen ().

! pip installer pandaer
import pandaer som pd
import nusset som f.eks.

# Last inn datasettet
data = pd. les_csv ( '/content/sample_data/california_housing_test.csv' )

# Vis de første par radene
skrive ut ( data. hode ( ) )

# Se etter manglende verdier
manglende_verdier = data. er null ( ) . sum ( )

# Vis manglende verdier teller etter kolonne
skrive ut ( manglende_verdier )

Etter at vi har funnet manglende data i en rad som kjører koden som er nevnt tidligere, kan vi fjerne disse radene siden disse radene ikke har mye nyttig data. Vi kan til og med gjette de manglende verdiene og fylle ut de tomme feltene med utdannede gjetninger ved å estimere de tidsbaserte dataene basert på nærliggende punkter.

Nå fjerner vi duplikatene som er kopier av det samme fordi de kan forvirre analysen vår. For å finne dupliserte verdier i datasettet bruker vi funksjonen 'duplicate_rows = data[data.duplicated()]'. For å slippe disse dupliserte verdiene kaller vi data.drop_duplicates()-funksjonen. Vi kan finne og fjerne dem ved å bruke følgende kode:

! pip installer pandaer
import pandaer som pd
import nusset som f.eks.
# Last inn datasettet
data = pd. les_csv ( '/content/sample_data/california_housing_test.csv' )
# Vis de første par radene
skrive ut ( data. hode ( ) )

# Se etter dupliserte rader
duplicate_rows = data [ data. duplisert ( ) ]

# Fjern duplikater
data = data. drop_duplicates ( )

# Vis de første radene etter fjerning av duplikater
skrive ut ( data. hode ( ) )

Datatyper bestemmer hvilke data som kan lagres for å fikse datatypene. Det er viktig å ha riktig type for hver type data. For eksempel bør datoer ha datatypen dato og klokkeslett, og tall skal være i datatype som int, float osv. For å sjekke datatypene til dataene våre bruker vi funksjonen 'data.dtypes'. Denne funksjonen kan brukes på følgende måte:

! pip installer pandaer
import pandaer som pd
import nusset som f.eks.
# Last inn datasettet
data = pd. les_csv ( '/content/sample_data/california_housing_test.csv' )
# Vis de første par radene
skrive ut ( data. hode ( ) )
# Sjekk datatypene for hver kolonne
datatyper = data. dtypes

# Vis datatyper
skrive ut ( datatyper )

Hvis vi finner noen problemer, kan vi endre datatypen ved å bruke Pandas. For eksempel kan vi gjøre datoer til et datoformat. 'dtypes'-attributtet til en DataFrame gir informasjon om datatypene for hver kolonne. Hvis vi finner ut at datatypen ikke samsvarer, kan vi bruke Pandas sin astype() funksjon for å konvertere kolonnene til de ønskede typene.

Etter datatypene møter vi noen ganger uteliggere som er verdier som er veldig forskjellige fra de andre. De kan ødelegge beregningene våre. For å håndtere uteliggere, definerer vi en funksjon som bruker 'np.abs(stats.zscore(data))' z-score-funksjonen som sammenligner verdiene som finnes i våre data med terskelverdien. Alle andre verdier enn området for denne terskelen anses som en uteligger . La oss se hvordan du finner og håndterer uteliggere:

! pip installer pandaer
import pandaer som pd
import nusset som f.eks.

# Last inn datasettet
data = pd. les_csv ( '/content/sample_data/california_housing_test.csv' )

# Vis de første par radene
skrive ut ( data. hode ( ) )
fra scipy import statistikk

def oppdage_avvikere ( data ) :
z_scores = f.eks. abs ( statistikk. zscore ( data ) )
komme tilbake f.eks. hvor ( z_scores > 3 )

# Oppdag og håndter avvikere i 'Salg'-kolonnen
uteliggere = oppdage_avvikere ( data [ 'lengdegrad' ] )
data [ 'lengdegrad' ] . plass [ uteliggere ] = data [ 'lengdegrad' ] . median ( )

# Oppdag og håndter uteliggere i kolonnen 'Solgte enheter'
uteliggere = oppdage_avvikere ( data [ 'breddegrad' ] )
data [ 'breddegrad' ] . plass [ uteliggere ] = data [ 'breddegrad' ] . median ( )

# Vis de første radene etter håndtering av uteliggere
skrive ut ( data. hode ( ) )

Vi bruker en enkel metode for å finne og fikse avvikene i forrige kode. Det innebærer å erstatte de ekstreme verdiene med den midterste verdien av dataene. Denne koden bruker Z-score-metoden for å oppdage uteliggere i datasetts «lengdegrad» og «breddegrad»-kolonner. Outliers erstattes med medianverdiene for deres respektive kolonner.

For å få dataene til å se like ut, kan dataene noen ganger se annerledes ut selv om det betyr det samme. For eksempel kan datoene skrives i forskjellige formater. Standardisering innebærer å sikre et konsistent dataformat og representasjon. Dette kan inkludere formatering av datoene, konvertering av tekst til små bokstaver eller normalisering av numeriske verdier. La oss standardisere «Dato»-kolonnen i datasettet vårt og sørge for at dataene våre ser like ut:

import pandaer som pd
import nusset som f.eks. # Importer numpy

# Last inn dataene
data = pd. les_csv ( 'salgsdata.csv' )

# Få 'Dato'-kolonnen til å se konsistent ut
data [ 'Dato' ] = pd. til_datotid ( data [ 'Dato' ] )

# Se hvordan det ser ut nå
skrive ut ( data. hode ( ) )

I dette eksemplet standardiserer vi datoformatet i datasettet vårt til Pythons datetime-format ved å bruke 'pd.to_datetime(data['Date'])'-funksjonen. Ved å konvertere «Dato»-kolonnen til samme format, gjør vi det enklere å arbeide med disse dataene. Utdataene viser de første radene i datasettet med den standardiserte 'Dato'-kolonnen.

Konklusjon

På vår reise gjennom datarensing ved hjelp av Python og Pandas, lærte vi hvordan vi kan forbedre dataene våre for analyse. Vi startet med å forstå hvorfor det er så viktig å rense dataene. Det hjelper oss å ta bedre beslutninger. Vi undersøkte hvordan vi skulle håndtere manglende data, fjerne duplikatene, fikse datatypene, håndtere avvikene og få dataene våre til å se like ut. Med disse ferdighetene er vi bedre forberedt på å gjøre rotete data til noe vi kan stole på og bruke til å oppdage viktig informasjon. Datarydding er en pågående prosess, som å holde rommet vårt ryddig, og det gjør vår dataanalysereise mer vellykket.