Sådan udføres datarensning med Python og Pandaer

Sadan Udfores Datarensning Med Python Og Pandaer



At lære at rense data ved hjælp af Python og Pandas er afgørende for alle, der arbejder med data. Datarensning bruges mest til nøjagtig analyse og modellering ved at fjerne fejl og uoverensstemmelser. Denne vejledning gennemgår trin-for-trin-processen, som viser os, hvordan vi håndterer de manglende data og opdager eller identificerer afvigelserne. Med Python og Pandas som vores værktøjer kan vi transformere de rodede data til en ren, brugbar information. Denne guide hjælper os også med at forbedre vores datakvalitet og forberede dem til analyse og beslutningstagning.

Rensning af data med Python og Pandas

Data er ligesom byggestenene i beslutningstagning i dag. Men forestil dig at have en gruppe blokke i forskellige former og størrelser fra denne samling; det er svært at bygge noget meningsfuldt. Det er her, datarensningen kommer ind for at hjælpe.

Denne guide udforsker, hvordan man renser dataene ved hjælp af Pythons rammeværk, som er Pandas for bedre beslutningstagning. Dataoprydning er også væsentlig, i betragtning af at vi arbejder med en liste over salgsrekorder for en butik. Vi bemærker muligvis nogle manglende tal, mærkelige datoer og gentagne elementer uden grund på listen. Hvis vi foretager beregninger eller registreringer baseret på disse oplysninger, kan disse problemer ødelægge vores beregninger og forudsigelser. Datarensning hjælper med at løse disse problemer og sikrer, at vores data er nøjagtige og klar til brug.







Datarensning omfatter håndtering af de manglende data, og hvad man skal gøre, når nogle data mangler, fjernelse af dubletterne, fjernelse af kopierede ting, rettelse af datatyperne, sikring af, at alt er i det korrekte format, og håndtering af outliers eller håndtering af tallene som ikke passer ind. Disse fejl får dataene til at se ens ud og standardiserer hvordan dataene fremstår.



For at komme i gang skal du først sørge for, at vi har Python og Pandas installeret. Vi kan gøre dette ved at skrive kommandoerne i vores computers terminal eller kommandoprompt. For at implementere de koder, der er nævnt i denne vejledning, kan vi bruge Python Pycharm IDE, der er installeret på vores system eller online Python-platformen, som er 'Google Colab', og installere 'pip'-kommandoer for at installere de vigtige biblioteker.



Lad os nu importere pandaer og indlæse vores eksempeldata. I dette eksempel bruger vi Google Colab til at køre koderne. Så vi importerer først pandaer ved at indtaste følgende kommando:





! pip installer pandaer

importere pandaer som pd

importere nusset som f.eks.

Derefter indlæser vi det datasæt, som vi ønsker at vise, ved hjælp af pd.read()-metoden, som tager filstien som inputparameter.

# Indlæs datasættet

data = pd. læs_csv ( '/content/sample_data/california_housing_test.csv' )

# Vis de første par rækker

Print ( data. hoved ( ) )



I det næste eksempel bruger vi data om salg i en lille butik. For at håndtere de manglende data mangler oplysningerne nogle gange i vores data. Vi kalder disse manglende dele som 'NaN' (hvilket betyder 'ikke et tal'). For at finde disse manglende værdier i Python-scriptet indlæser vi først datasættet, som vi gjorde i det forrige eksempel. Derefter finder vi eventuelle manglende værdier i datasættet ved hjælp af funktionen 'missing_values ​​= data.isnull().sum()'. Denne funktion finder alle de manglende værdier i datasættet. Derefter viser vi dem ved hjælp af print ()-funktionen.

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

# Indlæs datasættet
data = pd. læs_csv ( '/content/sample_data/california_housing_test.csv' )

# Vis de første par rækker
Print ( data. hoved ( ) )

# Tjek for manglende værdier
manglende_værdier = data. er null ( ) . sum ( )

# Vis manglende værdier tæller efter kolonne
Print ( manglende_værdier )

Når vi har fundet eventuelle manglende data i en række, der kører den kode, der er nævnt tidligere, kan vi fjerne disse rækker, da disse rækker ikke har meget nyttige data. Vi kan endda gætte de manglende værdier og udfylde de tomme felter med kvalificerede gæt ved at estimere de tidsbaserede data baseret på nærliggende punkter.

Nu fjerner vi de dubletter, der er kopier af det samme, fordi de kan forvirre vores analyse. For at finde de duplikerede værdier i datasættet bruger vi funktionen 'duplicate_rows = data[data.duplicated()]'. For at slette disse duplikerede værdier kalder vi data.drop_duplicates()-funktionen. Vi kan finde og fjerne dem ved hjælp af følgende kode:

! pip installer pandaer
importere pandaer som pd
importere nusset som f.eks.
# Indlæs datasættet
data = pd. læs_csv ( '/content/sample_data/california_housing_test.csv' )
# Vis de første par rækker
Print ( data. hoved ( ) )

# Tjek for duplikerede rækker
duplicate_rows = data [ data. duplikeret ( ) ]

# Fjern dubletter
data = data. drop_duplicates ( )

# Vis de første par rækker efter fjernelse af dubletter
Print ( data. hoved ( ) )

Datatyper bestemmer, hvilke data der kan gemmes for at rette op på datatyperne. Det er vigtigt at have den rigtige type for hver type data. For eksempel skal datoer have datatypen dato og klokkeslæt, og tal skal være i datatype som int, float osv. For at kontrollere datatyperne for vores data bruger vi funktionen 'data.dtypes'. Denne funktion kan bruges på følgende måde:

! pip installer pandaer
importere pandaer som pd
importere nusset som f.eks.
# Indlæs datasættet
data = pd. læs_csv ( '/content/sample_data/california_housing_test.csv' )
# Vis de første par rækker
Print ( data. hoved ( ) )
# Tjek datatyperne for hver kolonne
data_typer = data. dtyper

# Vis datatyper
Print ( data_typer )

Hvis vi finder problemer, kan vi ændre datatypen ved hjælp af Pandas. For eksempel kan vi lave datoer til et datoformat. 'dtypes'-attributten for en DataFrame giver information om datatyperne for hver kolonne. Hvis vi finder ud af, at datatypen ikke stemmer overens, kan vi bruge Pandas' astype()-funktion til at konvertere kolonnerne til de ønskede typer.

Efter datatyperne støder vi nogle gange på outliers, som er værdier, der er meget forskellige fra de andre. De kan ødelægge vores beregninger. For at håndtere outliers, definerer vi en funktion, der bruger 'np.abs(stats.zscore(data))' z-score-funktionen, som sammenligner de værdier, der findes i vores data, med tærskelværdien. Enhver anden værdi end intervallet for denne tærskelværdi betragtes som en outlier . Lad os se, hvordan du finder og håndterer afvigelserne:

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

# Indlæs datasættet
data = pd. læs_csv ( '/content/sample_data/california_housing_test.csv' )

# Vis de første par rækker
Print ( data. hoved ( ) )
fra krydret importere statistik

def detect_outliers ( data ) :
z_scores = f.eks. abs ( statistik. zscore ( data ) )
Vend tilbage f.eks. hvor ( z_scores > 3 )

# Opdag og håndtering af outliers i kolonnen 'Salg'
afvigere = detect_outliers ( data [ 'længde' ] )
data [ 'længde' ] . placere [ afvigere ] = data [ 'længde' ] . median ( )

# Opdag og håndter afvigende værdier i kolonnen 'Solgte enheder'
afvigere = detect_outliers ( data [ 'Breddegrad' ] )
data [ 'Breddegrad' ] . placere [ afvigere ] = data [ 'Breddegrad' ] . median ( )

# Vis de første par rækker efter håndtering af outliers
Print ( data. hoved ( ) )

Vi bruger en simpel metode til at finde og rette afvigelserne i den forrige kode. Det involverer at erstatte de ekstreme værdier med den midterste værdi af dataene. Denne kode bruger Z-score-metoden til at detektere outliers i vores datasæts 'længdegrad' og 'breddegrad' kolonner. Outliers erstattes med medianværdierne for deres respektive kolonner.

For at få data til at se ens ud, kan data nogle gange se anderledes ud, selvom det betyder det samme. For eksempel kan datoerne skrives i forskellige formater. Standardisering indebærer at sikre et ensartet dataformat og repræsentation. Dette kan omfatte formatering af datoerne, konvertering af tekst til små bogstaver eller normalisering af de numeriske værdier. Lad os standardisere kolonnen 'Dato' i vores datasæt og sørge for, at vores data ser ens ud:

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

# Indlæs dataene
data = pd. læs_csv ( 'salgsdata.csv' )

# Få kolonnen 'Dato' til at se konsekvent ud
data [ 'Dato' ] = pd. til_datotid ( data [ 'Dato' ] )

# Se, hvordan det ser ud nu
Print ( data. hoved ( ) )

I dette eksempel standardiserer vi datoformatet i vores datasæt til Pythons datetime-format ved hjælp af funktionen 'pd.to_datetime(data['Dato'])'. Ved at konvertere kolonnen 'Dato' til samme format gør vi det nemmere at arbejde med disse data. Outputtet viser de første par rækker af datasættet med den standardiserede 'Dato'-kolonne.

Konklusion

På vores rejse gennem datarensning ved hjælp af Python og Pandas lærte vi, hvordan vi kan forbedre vores data til analyse. Vi startede med at forstå, hvorfor det er så vigtigt at rense dataene. Det hjælper os med at træffe bedre beslutninger. Vi undersøgte, hvordan man håndterer manglende data, fjerner dubletterne, fikser datatyperne, håndterer afvigelserne og får vores data til at se ens ud. Med disse færdigheder er vi bedre forberedt til at gøre en rodet data til noget, som vi kan stole på og bruge til at opdage en vigtig information. Datarensning er en løbende proces, ligesom at holde vores værelse ryddeligt, og det gør vores dataanalyserejse mere vellykket.