Pandas konverterer kolonne til DateTime

Pandas konverterer kolonne til DateTime
Tidsseriedata oppstår ofte når du arbeider med data i pandaer. Pandas er et ideelt rammeverk for å takle tidsserie-data i Python. Med det medfølgende datasettet kan det hende vi trenger å gjøre strengen til DateTime -format. Det kan hende du må endre en kolonnes datetimeformatering hvis den for øyeblikket lagrer dataene som enten en streng eller objekttype. Tallrike tidsmessige handlinger kan utføres på kolonnen som bruker DateTime -formatet. For eksempel kan du bestemme forskjellen i tid mellom to datoer og hente spesifikke detaljer som måned, år osv.

Vi kan endre en kolonnes format fra enten en streng eller til og med et objekt til en datetime ved å bruke Pandas to_dateTime () og astype () metoder. Man kan snu en datetime i en DataFrame som har en strengkolonne som er formatert på en viss måte ved å bruke DateTime () -metoden, som gjenkjenner formatargumentet for å definere formatdato og tid. Brukeren vil ikke kunne utføre noen tidsseriebaserte funksjoner på dem når datoene ikke har blitt lagt inn i riktig format. Vi må endre datoene til nødvendig dato-tidsformat for å håndtere dette.

Denne artikkelen vil dekke metoder for å konvertere en Pandas DataFrame -kolonne med et objekt eller en streng til en datatime -datatype.

Eksempel 1: Bruke PD.To_DateTime () -metode for å konvertere kolonnetypen til Pandas DataFrame fra streng til DateTime

I denne metoden bruker vi “Pandas.To_DateTime () ”-funksjon for å endre datatypen på kolonnens Pandas DataFrame -datatype.

Importer først biblioteket til Python -programmet. Sett deretter aliaset til PD for å bruke funksjonaliteten til Pandas -biblioteket. Hovedkoden begynner med å lage et DataFrame -objekt “oppføring”. Vi tildelte deretter dette objektet for utgangen av å kalle Pandas DataFrame -funksjonen. Vi har konstruert en dataaframe ved å bruke pandaene.DataFrame () -metode. I denne dataaframe har vi initialisert tre kolonner: dato, hendelse og kostnad.

Du kan se at kolonnen 'Dato' lagrer data i “DD/MM/YY” -format allerede. Så vi trenger ikke å sette den. I stedet kan vi jobbe direkte med vår nødvendige oppgave. Vi vil vise DataFrame vi nettopp har opprettet ved å bruke metoden for utskrift ().

Når DataFrame er opprettet, vil vi sjekke datatypen for alle kolonnene i DataFrame. La oss bruke Pandas Info () -metoden for å se på datatypen på verdier i hver kolonne.

Utgangsbildet nedenfor viser oss en dataaframe med 3 kolonner, og deretter viser det datatypen for alle de 3 kolonnene.

Siden vi trenger å endre datatypen til "Dato" -kolonnen, vil vi fokusere på den nåværende datatypen som er "objekt", streng. Vi må endre formatet fra objekt til datetime. Her er pandaene.To_DateTime () -funksjonen vil gjøre det mulig for oss å konvertere formatet til DateTime:

Vi må følge denne syntaksen for å bruke PD.to_datetime () funksjon:

Navnet på DataFrame -objektet med navnet på kolonnen mellom lange parenteser og tildelingsoperatøren "=", og påkaller nå pandaene.DateTime () Metode med DataFrame -navn som har påkrevd kolonnens navn som parametere. I vår illustrasjon er det “oppføring ['date'] = PD.to_datetime (oppføring ['date']) ”.

Når denne funksjonen er påberopt, er neste samtale til Pandas Info () -funksjonen for å se de oppdaterte datatypene til DataFrame.

Terminalen viser utdataene fra det ovennevnte programmet med "Dato" -kolonens konverteringsdatatype fra objekt til datetime.

Eksempel 2: Bruke Pandas dataaframe.astype () -metode for å konvertere kolonnetypen til pandas dataaframe fra streng til datetime

En annen metode for å konvertere DataFrame -kolonnens datatype til Datetime er å bruke Pandas DataFrame.astype () funksjon.

Vi benytter oss av DataFrame vi produserte i det siste eksemplet for å lage denne illustrasjonen. Med de samme tre kolonnene i DataFrame har vi lagret dem i DataFrame -objektet. Og vise den ved å bruke print () -funksjonen.

La oss se utgangsbildet for programmet.

'Dato' og kolonnen 'Event' har objektdatatype mens 'Cost' -kolonnen har int -datatype. Konverteringen av datatype vil bli gjort på kolonnen 'Dato' når vi diskuterer modifiseringen av kolonnen til datatime -datatype.

Vi vil demonstrere hvordan du endrer datatypen til DataFrame -kolonnen "Dato" fra objekt til datetime -format. Men denne gangen bruker vi Pandas -metoden DataFrame.astype () for nevnte formål.

I øyeblikksbildet av koden over bruker vi AstType () -metoden fra Pandas Library. Syntaksen vi følger for utførelsen av denne metoden er navnet på DataFrame -objektet med kolonnens navn som du vil konvertere til DateTime -format, mellom lange parenteser, etter tildelingsoperatøren “=”, igjen samme navn på DataFrame og Kolonnenavn med ".astype () ”-funksjon.

Mellom parentesene til AstType () -metoden, må du spesifisere den nødvendige datatypen. Ettersom vi trenger å konvertere den til datatype, har vi gitt "Datetime64 [ns])" datatype. Til slutt viste vi datatypene ved å påkalle info () -metoden.

Dette gir oss følgende utfall:

Eksempel nr. 3: Bruk Pandaene.to_date () metode for å konvertere datatypen til datetime og endre formatet til pandas dataaframe -kolonnen

Anta at vi må endre en dataramme-kolonne fra 'Yymmdd' til 'Yyyy-Mm-DD', denne illustrasjonen vil guide deg for å oppnå utfallet.

Start programmet igjen ved å importere Pandas -biblioteket som PD for å få tilgang til Pandas -funksjoner. I neste trinn har vi opprettet en ordbokliste "plist" og tildelt den et datasett med 2 sett med verdier. Deretter, for å konvertere denne listen til en dataaframe, oppretter vi et DataFrame -objekt "nytt" og tilordner det utgangen av å ringe PD.DataFrame () -funksjon. Vi passerer listenavnet og "kolonnene" -egenskapen gitt to kolonner som heter 'Datoer' og 'avtaler', som parameteren til PD.DataFrame () -funksjon for å konstruere en DataFrame med 2 kolonner. Vi påkaller deretter "print ()" -funksjonen for å vise denne dataaframe. Vi bruker også en annen utskrift () med egenskapen "Dtypes" for å bestemme datatypen på kolonnene i DataFrame.

Stillbildet som er tatt av utgangsterminalen nedenfor, viser DataFrame med 2 kolonner og spesifiserer eksplisitt datatype for hver kolonne.

I bildet over kan du se at datatypen til 'datoer' -kolonnen er definert som et objekt.

Vi bruker PD.To_DateTime () -funksjonen med samme syntaks som vi har forklart i det første eksemplet med ett tillegg til parametrene denne gangen. Med navnet på DataFrame og kolonnenavn bruker vi også parameterformatet 'i denne illustrasjonen for å spesifisere formatet som vi vil at' datoer '-kolonnen skal vises. Vi har angitt “Format = '%y%m%d'” -stil. Nå viser vi DataFrame og også datatypene til DataFrame -kolonnene.

Her er utdataene med tidligere og oppdaterte formater av "datoer" -kolonnen og også den konverterte datatypen for denne spesielle kolonnen:

Konklusjon

Pythons Pandas -modul gir flere funksjoner for å gjøre det enkelt for programmerere å jobbe med databehandling. Pandas -metoden “PD.to_datetime () ”og“ DataFrame.astype () ”har blitt diskutert for konvertering av strengdatatype til en datetime. Vi forklarte teknikkene ved hjelp av praktiske Python-kodeeksempler implementert på Spyder for å gjøre læringsprosessen din glatt og konsistent med lett-til-grov konsepter.