Panda's: hoe datum- en tijdkolommen te combineren
U kunt de volgende syntaxis gebruiken om de datum- en tijdkolommen van een Panda DataFrame in één kolom te combineren:
df[' datetime '] = pd. to_datetime (df[' date '] + ' ' + df[' time '])
Houd er rekening mee dat deze syntaxis ervan uitgaat dat de datum- en tijdkolommen beide huidige tekenreeksen zijn.
Als beide kolommen nog geen strings zijn, kun je astype(str) gebruiken om ze naar strings te converteren:
df[' datetime '] = pd. to_datetime (df[' date ']. astype ( str ) + ' ' + df[' time ']. astype ( str ))
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: Combineer datum- en tijdkolommen in Panda’s
Laten we zeggen dat we het volgende panda’s DataFrame hebben dat een datumkolom en een tijdkolom bevat:
import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': ['10-1-2023', '10-4-2023', '10-6-2023', '10-6-2023', '10-14-2023', '10-15-2023', '10-29-2023'], ' time ': ['4:15:00', '7:16:04', '9:25:00', '10:13:45', '15:30:00', '18:15:00', '23:15:00']}) #view DataFrame print (df) date time 0 10-1-2023 4:15:00 1 10-4-2023 7:16:04 2 10-6-2023 9:25:00 3 10-6-2023 10:13:45 4 10-14-2023 15:30:00 5 10-15-2023 18:15:00 6 10-29-2023 23:15:00
Stel dat we een nieuwe kolom willen maken met de naam datetime , waarin de waarden uit de datum- en tijdkolommen worden gecombineerd.
We kunnen hiervoor de volgende syntaxis gebruiken:
#create new datetime column df[' datetime '] = pd. to_datetime (df[' date '] + ' ' + df[' time ']) #view updated DataFrame print (df) datetime datetime 0 10-1-2023 4:15:00 2023-10-01 04:15:00 1 10-4-2023 7:16:04 2023-10-04 07:16:04 2 10-6-2023 9:25:00 2023-10-06 09:25:00 3 10-6-2023 10:13:45 2023-10-06 10:13:45 4 10-14-2023 15:30:00 2023-10-14 15:30:00
Houd er rekening mee dat de nieuwe datetime- kolom de waarden uit de datum- en tijdkolommen met succes in één kolom heeft gecombineerd.
We kunnen ook de functie dtypes gebruiken om de gegevenstypen van elke kolom in het DataFrame te controleren:
#view data type of each column
df. dtypes
date object
time object
datetime datetime64[ns]
dtype:object
Uit het resultaat kunnen we zien dat de datum- en tijdkolommen beide objecten zijn (dwz tekenreeksen) en dat de nieuwe datetime- kolom een datetime is.
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