Pandas endrer kolonnetypen til streng

Pandas endrer kolonnetypen til streng
En Dataframes kolonnetyper må kanskje endres etter opprettelse av forskjellige årsaker, for eksempel for å konvertere en kolonne til et numerisk format som kan brukes til modellering og klassifisering. Denne opplæringen viser deg hvordan du konverterer verdiene til kolonnen til en strengdatatype ved hjelp av Pythons Pandas -pakke. Vi vil prøve å lære deg hvordan du kan endre pandaene flytende og heltallverdier til strenger. I tillegg lærer du fordelene ved å bruke strengdatatypen i pandaer, samt hvordan strengene har utviklet seg i pandaer. Vi vil bruke forskjellige funksjoner for å endre DataFrame -kolonnens Dataypes til en streng.

Strengdatatype i pandaer

Pandas bruker objektdatatypen som standard for å lagre strenger. Strenger og blandede datatyper håndteres begge av objektdatatypen, men det er ikke eksplisitt, spesielt. Det har vært en dedikert datatype av streng i pandaer i versjon 1.0. Selv om denne datatypen ennå ikke gir noen eksplisitte ressurser eller ytelsesforbedringer, sa Pandas Development Team at dette vil skje i fremtiden. Som et resultat vil denne opplæringen utelukkende bruke strengdatatypen. Bruk “STR” i stedet for streng når det er mulig hvis du bruker en Python -versjon mindre enn 1.0.

Hvordan endre pandas -kolonnen til streng

Ulike funksjoner kan brukes til å endre kolonnen i pandaer for å strenge datatype. Å bruke AstType () -metoden er den vanligste måten å gjøre det på. La oss se på AstType () -funksjonen for å se hvordan det fungerer.

Syntaks: DF.astype (“Column_name”: str, feil = "heve")

df.astype (): En metode for å kalle Pandas astypefunksjon.

“Kolonnenavn”: Str: Kolonner som skal konverteres til et annet format (String Datatype). Kolonnenavnet er kolonnen hvis datatype kommer til å bli endret. Kolonneverdiene må transformeres til den nødvendige datatypen, som er streng. Enhver innebygd datatype av python eller datatype er akseptabel.

feil = 'heve': For å definere hvordan unntak skal håndteres under konvertering. Bare de mulige verdiene til cellene blir konvertert; "Raise" vil vise en feil, og "ignorere" vil ignorere den.

Vi har sett syntaksen til AstType () -metoden. Nå, i de følgende eksempler, lærer du hvordan du bruker AstType (), andre funksjoner og attributter for å konvertere DataFrame -kolonnene til strenger.

Eksempel 1: Bruke AstType () -metoden

Et Pandas -objekt kan konverteres til en spesifikk datatype ved hjelp av AstType () -metoden. Enhver passende eksisterende kolonne kan konverteres til en kategorisk type ved bruk av AstType () -funksjonen. Når vi trenger å konvertere datatypen til en spesifikk kolonne til en annen datatype, er AstType () -metoden veldig nyttig. I dette eksemplet vil vi endre kolonnedatatypen til streng ved hjelp av AstType () -funksjonen for vi må lage en DataFrame. For å lage en dataaframe, vil vi først importere Pandas -biblioteket for å bruke dets funksjoner og funksjonaliteter.


Vi opprettet vår dataaframe ved å sende en ordbok til PD.DataFrame () fungerer som et argument. Ordbokens nøkler blir etikettene for hver kolonne etter å ha passert dem i PD.DataFrame () -funksjonen og verdiene til nøkler blir verdiene til DataFrames kolonner. For å visualisere DataFrame, bruker vi PRINT () -funksjonen.


I forrige DataFrame har vi fire DataFrame -kolonner. Den første kolonnen "Student" inneholder navnene på studenter - "Jack", "Tony", "Marty", "Alex", "Rob". I den andre kolonnen "alder" blir alderen til hver student lagret “16, 15, 18, 17, 17”. Mens kolonnen "gebyr" lagrer gebyret for hvert kurs "7000.0, 6500.0, 7100.0, 7000.0, 6900.0 ”. Kolonnefaget består av navnene på emner - "engelsk", "statistikk", "matematikk", "engelsk", "vitenskap" . Vi kan sjekke datatypen til hver rad ved å bruke DTYPES -attributtet som følger:


Datatypen på kolonnene “Student” og “Emne” er “Objekt”.Mens datatypen til kolonnene “alder” og “gebyr” er henholdsvis INT64 og Float64. La oss nå endre datatypen på kolonnen "avgift" fra float til streng.


Da vi brukte Astypes () -metoden og passerte datatypen “String” for å endre datatypen til kolonnen “Fee”, la oss se om kolonnen er konvertert til en streng eller ikke.


Du kan legge merke til at datatypen til kolonnen “Fee” blir konvertert til streng fra Float64.

Eksempel 2: Bruke MAP () og Apply () -metoden

Kart () -metoden brukes til å konvertere serieverdiene til deres tilsvarende innganger. For å endre hver dataverdi i en serie med en annen verdi, brukes kart () -funksjonen. Den verdien kan oppnås fra en serie, et dikter eller en funksjon mens brukerne kan passere en funksjon og bruke den på alle verdier i Pandas -serien ved hjelp av Pandas Apply () -funksjonen. Imidlertid kan disse funksjonene brukes til å endre datatypen på kolonner. La oss bruke den samme DataFrame som vi opprettet i forrige eksempel.


Nå sjekker vi datatypene til kolonnene ved hjelp av DTYPES -attributtet.


La oss nå endre datatypene til kolonnen "Alder" ved hjelp av kart () -funksjonen og endre datatypene til kolonnen "Fee" med Apply () -funksjon.


Vi brukte henholdsvis kartet () og Apply () -funksjonen på kolonnen "gebyr" og "alder". La oss bruke DTYPES -attributtet på vår "DF" DataFrame for å se resultatene.


Her kan vi se at "String" -datatypen ikke kan brukes når du bruker MAP () og Apply () -metoden. Begge kolonnene "alder" og "gebyr" er nå konvertert til objektdatatype som et resultat. Pandaer bruker imidlertid objektdatatypen som standard for å lagre "strengene", men vi vil ha resultatet i "streng" datatype. På grunn av dette vil vi ikke gi råd til å bruke disse metodene i de nye versjonene av Python for å endre datatypene til kolonnene.

Eksempel 3: Bruke AstType () -metoden

Sist, men ikke minst, bruker vi AstType () -metoden for å endre datatypen til DataFrame til strenger. Vi har sett hvordan vi kan endre datatypene til spesifikke kolonner i DataFrame til "streng" i de forrige eksemplene. Nå endrer vi datatypene til alle kolonnene til “String” i dette eksemplet. Igjen bruker vi “DF” DataFrame for dette eksemplet.


Ved å bruke DTYPES -attributtet, la oss først sjekke datatypene til våre “DF” DataFrame -kolonner.


Ingen av kolonnene i forrige DataFrame har en kolonne med strengdatatype. Nå bruker vi AstType () -metoden for å endre datatypen til alle kolonnene i DataFrame i datatypen “String”.


Som det kan sees, ved å bare bruke AstType () -egenskapen med DataFrame mens du gir "strengen" inne i funksjonen, kan du enkelt endre alle kolonnene i DataFrame til streng.


Datatypene til hver kolonne blir endret til streng.

Vi kan også bruke ApplyMap () -funksjonen eller .verdier.astype () for å konvertere datatypene, men de vil returnere "objekt" -datatypen i stedet for "streng".

Konklusjon

I denne opplæringen diskuterte vi hva en datatype -streng i Python er og hvordan du kan endre Pandas -kolonnen til strengen. Vi lærte syntaksen til AstType () -funksjonen for å forstå hvordan den fungerer. Etter å ha gått gjennom denne opplæringen, kan det hende du kan endre kolonnene til strengen selv. Vi implementerte forskjellige eksempler for å lære deg hvordan AstType kartet () og Apply () -metoden kan brukes til å endre Pandas -kolonnene til strengdatatyper.