Extraire des informations de la date (année, mois, jour, etc.) avec .dt
Fonctions :
-
.dt
La fonctionnalité .dt dans pandas permet d'extraire des informations spécifiques à partir d'une colonne de type datetime. Cela est utile pour effectuer des analyses basées sur des composantes de date, comme l'année, le mois, le jour de la semaine, etc. Une fois que les dates ont été converties en objets datetime avec pd.to_datetime(), vous pouvez utiliser .dt pour accéder à ces propriétés.
Importation :
import pandas as pd
Attributs :
Paramètre Description year
Renvoie l'année de chaque date. month
Renvoie le mois de chaque date (1-12). day
Renvoie le jour du mois de chaque date (1-31). hour
Renvoie l'heure de chaque date (0-23). minute
Renvoie les minutes de chaque date (0-59). second
Renvoie les secondes de chaque date (0-59). weekday
Renvoie le jour de la semaine sous forme de nombre (0 = lundi, 6 = dimanche). dayofweek
Identique à weekday
.day_name()
Renvoie le nom complet du jour de la semaine (par exemple, 'Lundi', 'Mardi'). month_name()
Renvoie le nom du mois (par exemple, 'Janvier', 'Février'). Exemple de code :
import pandas as pd # Création d'un DataFrame avec une colonne de dates data = pd.DataFrame({ 'date': pd.to_datetime(['2023-03-15', '2022-11-30', '2024-07-21']) }) # Extraire des informations à partir de la colonne 'date' data['année'] = data['date'].dt.year data['mois'] = data['date'].dt.month data['jour'] = data['date'].dt.day data['jour_semaine'] = data['date'].dt.weekday data['nom_jour'] = data['date'].dt.day_name() print(data)
Explication du code :
- Création d'un DataFrame : Un
DataFrame
pandas est créé avec une colonne'date'
contenant des dates sous formatdatetime
. - Extraction de l'année : La propriété
.dt.year
extrait l'année de chaque date. - Extraction du mois : La propriété
.dt.month
extrait le mois de chaque date (1 pour janvier, 12 pour décembre). - Extraction du jour : La propriété
.dt.day
extrait le jour du mois pour chaque date. - Extraction du jour de la semaine : La propriété
.dt.weekday
renvoie un entier représentant le jour de la semaine (0 pour lundi, 6 pour dimanche). - Nom du jour : La méthode
.dt.day_name()
renvoie le nom du jour de la semaine sous forme de texte complet (ex.'Lundi'
,'Mardi'
). - Affichage du résultat : Le résultat sera un
DataFrame
avec des colonnes supplémentaires contenant les informations extraites de la date : l'année, le mois, le jour, le jour de la semaine et le nom du jour.
- Création d'un DataFrame : Un