Pandas konverterer alle kolonnene til streng

Pandas konverterer alle kolonnene til streng
Pandas, en Python -programvarepakke, tilbyr databehandling og evaluering. Den takler de manglende dataene med letthet og er rask, tilpasningsdyktig og klar. Den robuste datastrukturen tilbyr ikke bare, men forbedrer også funksjonaliteten til verktøy for datamodifisering og analyse.

En datatype er en grunnleggende byggestein som brukes av dataspråk for å forstå hvordan du kan bevare og endre dataene. I en Pandas dataaframe kan det hende du ofte vil gjøre enkelt- eller flere kolonner om til strenger. Praktisk, ved å bruke de forskjellige innfødte funksjonene til pandaer, er dette enkelt å oppnå.

Denne artikkelen vil lære deg hvordan du kan transformere verdiene i en kolonne til en strengdatatype ved hjelp av Pandas -biblioteket i Python. Du vil da oppdage hvordan du kan gjøre flottørene og heltalene til pandasstrenger. Du vil oppdage hvordan du konverterer kolonnene i en Pandas DataFrame til en streng i tillegg til de fire forskjellige måtene å gjøre det. Dataframe.astype (str), dataaframe.verdier.astype (str), dataaframe.Bruk (STR), DataFrame.Kart (STR), og DataFrame.ApplyMap (STR) er noen av metodene som brukes i demonstrasjonen for å konvertere enhver type til en strengtype.

Konstruere DataFrame ved hjelp av pandaer.DataFrame () -metode

Det første og fremste kravet til programmet er å importere Pandas -biblioteket som PD for å benytte Pandas -funksjonene. Neste trinn er å lage en Pandas dataaframe. Vi bygger en dataaframe med tre distinkte kolonner, en av dem kjører som en streng og de to andre vil laste som heltall. Deretter bruker vi utskrift () -funksjonen for å vise sine fem poster.

I forrige illustrasjon opprettet vi en dataaframe som bruker pandaene.DataFrame () -metode. Denne Dataframe har tre kolonner: “Navn”, “Alder” og “Lønn”. Hver kolonne lagrer fem poster eller verdier. Vi opprettet et DataFrame -objekt “Data” og tildelte det utgangen av å ringe PD.DataFrame () -metode. Så Pandas dataaframe er tilgjengelig ved å bruke dette objektet. Vi benyttet deretter utskriftsfunksjonen for å vise DataFrame.

Dataframe vi nettopp opprettet vises på terminalen som kan sees i øyeblikksbildet som er festet i det følgende:

Nå finner vi ut datatypene til alle kolonnene i DataFrame. For dette bruker vi pandaene .info () funksjon. De .Info () -metode Viser oss detaljene om DataFrame, og gir datatypene for hver kolonne, slik at vi kan undersøke hvordan Pandas behandler strengdataene.

Vi sysselsatte Pandas DataFrame.Info () -metode i forrige kode. PRINT () -funksjonen påberopes deretter med dataene.info () som parametere for å vise informasjonen om DataFrames kolonner DataType.

Dette er utgangen som vises på terminalen:

I forrige eksempel kan vi observere at pandaer alltid håndterer strengene som objekter som standard. Strenger og blandede datatyper håndteres begge av objektdatatypen. Imidlertid er det ikke spesielt åpenbart.

Pandas har en spesifikk strengdatatype fra versjon 1.0. Selv om denne datatypen ennå ikke gir noen klar lagrings- eller effektivitetsforbedringer, sa Pandas Developer Team at dette vil skje i fremtiden. Som en konsekvens vil leksjonen utelukkende bruke strengdatatypen.

La oss begynne med å konvertere en kolonne til en streng ved hjelp av den foretrukne Pandas -tilnærmingen.

Eksempel 1:

Den første metoden som vi bruker er Pandas astype () -funksjonen. Kolonnen (serie) teknikken er et trekk ved pandaer.

Hvis du bruker Pandas 1.0 eller senere, pass i "strengen". Ellers kan du bruke "STR" for utgavene av Pandas tidligere enn 1.0. Ved å ta i bruk dette, kan du være sikker på at strengdatatypen brukes i stedet for objektdatatypen.

La oss begynne med sin praktiske demonstrasjon i et python -miljø.

I den forrige koden ved å bruke den tidligere opprettet DataFrame “Data”, benyttet vi oss nå Pandas ”.astype () ”-funksjon. Vi skrev Dataframes navn med ".astype () ”-funksjonen og leverte" String "-datatypen som parameter. Etterpå påkalte vi “.Info () ”-metode i utskrift () -funksjonens parenteser for å vise den oppdaterte datatypen til DataFrame -kolonnene.

Å utføre det forrige Python -skriptet gir oss følgende utfall:

"Alder" -søylen i Pandas DataFrame, som opprinnelig ble holdt som en INT64, håndteres for tiden som en strengdatatype som kan sees.

Eksempel 2:

Du kan ansette .Kart () Teknikk for å endre en Pandas -kolonne til strenger på en måte som er identisk med .astype () pandas serie funksjon.

La oss utforske hva dette ser ut til å være:

Illustrasjonen begynner med å bruke koden til DataFrame som vi forklarte i forrige eksempel. Etter å ha skrevet ut dataframet, viste vi deretter datatypene ved hjelp av ".info () ”-funksjon. Nå velger vi en kolonne hvis datatype er Ned for å konvertere til en streng. Vi valgte "alder" -kolonnen igjen for nevnte formål. Deretter påkalte vi “.kart () ”-funksjon med DataFrame -objektet og det spesifiserte kolonnenavnet. Vi definerte også datatypen innenfor ".Kart (STR) ”-funksjonens bukseseler. Vi må sjekke den oppdaterte datatypen med ".info () ”-metode.

Utgangen kan sees i følgende bilde:

Det fremgår av dette at strengdatatypen ikke kan brukes når du bruker .Kart () Metode. Dataene lagres i objektdatatypen som en konsekvens. På grunn av dette, hvis du kjører en utgave høyere enn 1.0, anbefaler vi ikke å bruke denne metoden.

Eksempel 3:

Som teknikken beskrevet tidligere, kan vi også endre datatypen til en pandas -kolonne til strenger ved å bruke .Bruk () Metode. De samme begrensningene gjelder, ved at vi bare er i stand til å transformere dem til objektdatatyper. Vi er fremdeles ikke i stand til å transformere dem til strengdatatyper.

La oss se på det:

Som du ser i det forrige skriptet som er gitt, brukes Apply () -metoden. Mellom seler i denne funksjonen spesifiserer vi datatypen. Denne metoden tar ikke "strengen". I stedet fungerer det med “Str”. Deretter viste vi datatypene med info () metodeutnyttelse.

Den resulterende terminalen viser at den oppdaterte datatypen endret seg fra INT64 til objekt som er en streng.

Eksempel 4:

Videre kan vi bruke pandasverdien.astype () -funksjon for å direkte transformere verdiene til en kolonne til strenger.

Her utforsker vi dets arbeider med Python Code -implementeringen:

Med samme dataaframe og kolonne benyttet vi pandaene “verdier.astype () ”-metoden og passerte datatypen“ STR ”som argument. Til slutt viste vi datatypene med info () -metoden.

Dette gir oss følgende utgang:

Eksempel 5:

Vårt siste segment lærer deg hvordan du kan bruke .ApplyMap () -funksjonen for å transformere alle Pandas DataFrame -kolonnene til strenger.

I denne metoden brukte vi .ApplyMap () -metode. Siden vi ønsker å konvertere alle kolonnene, trenger vi ikke nevne noe spesifikt kolonnenavn med DataFrame -objektet som vi gjorde tidligere. Vi brukte ganske enkelt DataFrame -objektet med .ApplyMap () -funksjonen og passerte datatypen “STR” som en parameter.

Dette er følgende utgang:

Konklusjon

Denne leksjonen er basert på Pandas 'forskjellige metoder for å konvertere kolonnene til strengdatatyper. Vi benyttet oss av alle mulige måter å gi deg en haug med enkle valg når vi møter slike problemer. Vi demonstrerte noen praktiske eksempler på koder for å hjelpe deg med å lære de forskjellige pandaseknikkene. Vi håper at denne forfatterskapet hjelper deg å forstå Pandas -modulene.