Panda's: hoe een index naar datum/tijd te converteren
U kunt de volgende syntaxis gebruiken om een indexkolom van een Panda DataFrame naar een datetime-indeling te converteren:
df. index = pd. to_datetime ( df.index )
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: Converteer de indexkolom naar Datetime in Panda’s
Stel dat we het volgende panda’s DataFrame hebben dat informatie bevat over de productverkoop in een winkel:
import pandas as pd #createDataFrame df = pd. DataFrame ({' time ': ['4-15-2022 10:15', '5-19-2022 7:14', '8-01-2022 1:14', '6-14-2022 9:45', '10-24-2022 2:58', '12-13-2022 11:03'], ' product ': ['A', 'B', 'C', 'D', 'E', 'F'], ' sales ': [12, 25, 23, 18, 14, 10]}) #set 'time' column as index df = df. set_index (' time ') #view DataFrame print (df) product sales time 4-15-2022 10:15 A 12 5-19-2022 7:14 B 25 8-01-2022 1:14 C 23 6-14-2022 9:45 D 18 10-24-2022 2:58 E 14 12-13-2022 11:03 F 10
Stel nu dat we proberen een nieuwe kolom te maken met de tijd in de indexkolom:
#attempt to create new column that contains hour of index column
df[' hour '] = df. index . hour
AttributeError: 'Index' object has no attribute 'hour'
We ontvangen een foutmelding omdat de indexkolom momenteel niet het datetime-formaat heeft en daarom geen ‚time‘-attribuut bevat.
Om deze fout te voorkomen, kunnen we de functie pandas to_datetime() gebruiken om de indexkolom naar datetime-indeling te converteren:
#convert index column to datetime format
df. index = pd. to_datetime ( df.index )
#create new column that contains hour of index column
df[' hour '] = df. index . hour
#view updated DataFrame
print (df)
product sales hour
time
2022-04-15 10:15:00 At 12 10
2022-05-19 07:14:00 B 25 7
2022-08-01 01:14:00 C 23 1
2022-06-14 09:45:00 D 18 9
2022-10-24 02:58:00 E 14 2
2022-12-13 11:03:00 F 10 11
Met de functie to_datetime() kunnen we de indexkolom naar het datetime-formaat converteren.
We kunnen dus met succes een nieuwe kolom maken met de naam tijd , die de uurtijd in de indexkolom bevat, zonder enige fout te ontvangen.
Opmerking : u kunt hier de volledige documentatie van de pandas to_datetime() -functie vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:
Hoe u een datumbereik in Pandas maakt
Hoe tijdstempel naar datum/tijd in Panda’s te converteren
Hoe het verschil tussen twee datums in panda’s te berekenen