Comment convertir une chaîne en Datetime dans Pandas
Vous pouvez utiliser les méthodes suivantes pour convertir une colonne de chaîne au format datetime dans un DataFrame pandas :
Méthode 1 : convertir une colonne de chaîne en Datetime
df['col1'] = pd.to_datetime(df['col1'])
Méthode 2 : convertir plusieurs colonnes de chaîne en Datetime
df[['col1', 'col2']] = df[['col1', 'col2']].apply(pd.to_datetime)
Les exemples suivants montrent comment utiliser chacune de ces méthodes en pratique avec le DataFrame pandas suivant :
import pandas as pd #create DataFrame df = pd.DataFrame({'task': ['A', 'B', 'C', 'D'], 'due_date': ['4-15-2022', '5-19-2022', '6-14-2022', '10-24-2022'], 'comp_date': ['4-14-2022', '5-23-2022', '6-24-2022', '10-7-2022']}) #view DataFrame print(df) task due_date comp_date 0 A 2022-04-15 2022-04-14 1 B 2022-05-19 2022-05-23 2 C 2022-06-14 2022-06-24 3 D 2022-10-24 2022-10-07 #view data type of each column print(df.dtypes) task object due_date object comp_date object dtype: object
Nous pouvons voir que chaque colonne du DataFrame a actuellement un type de données object , c’est-à-dire une chaîne.
Exemple 1 : convertir une colonne de chaîne en Datetime
Nous pouvons utiliser la syntaxe suivante pour convertir la colonne due_date d’une chaîne en datetime :
#convert due_date column to datetime
df['due_date'] = pd.to_datetime(df['due_date'])
#view updated DataFrame
print(df)
task due_date comp_date
0 A 2022-04-15 4-14-2022
1 B 2022-05-19 5-23-2022
2 C 2022-06-14 6-24-2022
3 D 2022-10-24 10-7-2022
#view data type of each column
print(df.dtypes)
task object
due_date datetime64[ns]
comp_date object
dtype: object
Nous pouvons voir que la colonne due_date a été convertie en datetime tandis que toutes les autres colonnes sont restées inchangées.
Exemple 2 : convertir plusieurs colonnes de chaîne en Datetime
Nous pouvons utiliser la syntaxe suivante pour convertir les colonnes due_date et comp_date d’une chaîne en datetime :
#convert due_date and comp_date columns to datetime
df[['due_date', 'comp_date']] = df[['due_date', 'comp_date']].apply(pd.to_datetime)
#view updated DataFrame
print(df)
task due_date comp_date
0 A 2022-04-15 2022-04-14
1 B 2022-05-19 2022-05-23
2 C 2022-06-14 2022-06-24
3 D 2022-10-24 2022-10-07
#view data type of each column
print(df.dtypes)
task object
due_date datetime64[ns]
comp_date datetime64[ns]
dtype: object
Nous pouvons voir que les colonnes due_date et comp_date ont toutes deux été converties d’une chaîne en datetime.
Remarque : Vous pouvez trouver la documentation complète de la fonction pandas to_datetime() ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans les pandas :
Comment créer une plage de dates dans Pandas
Comment convertir l’horodatage en date/heure dans Pandas
Comment calculer une différence entre deux dates chez les pandas