Maison >développement back-end >Tutoriel Python >Comment puis-je extraire efficacement l'année et le mois d'une colonne Datetime Pandas ?

Comment puis-je extraire efficacement l'année et le mois d'une colonne Datetime Pandas ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-03 04:24:38710parcourir

How Can I Efficiently Extract Year and Month from a Pandas Datetime Column?

Extraire l'année et le mois de la colonne Datetime de Pandas

Extraire l'année et le mois de la colonne Datetime d'un Pandas DataFrame peut être une tâche simple. Revenons sur le problème décrit ci-dessus et proposons une solution complète.

Une approche consiste à rééchantillonner la colonne Datetime pour la regrouper par fréquence, dans ce cas par mois. Cependant, le code fourni rencontrera une erreur puisque l'opération de rééchantillonnage n'est valable que pour les objets DatetimeIndex ou PeriodIndex.

Une autre solution courante consiste à appliquer une fonction lambda à chaque élément de la colonne Datetime, en découpant la chaîne pour l'extraire. juste la partie année ou mois. Cependant, cette méthode échouera en raison du type Timestamp des éléments de la colonne Datetime, qui ne dispose pas de la capacité de découpage.

Au lieu de cela, nous recommandons la solution suivante :

df['year'] = pd.DatetimeIndex(df['ArrivalDate']).year
df['month'] = pd.DatetimeIndex(df['ArrivalDate']).month

Alternativement, cette solution concise la syntaxe peut être utilisée :

df['year'] = df['ArrivalDate'].dt.year
df['month'] = df['ArrivalDate'].dt.month

Cette opération crée de nouvelles colonnes 'année' et 'mois', chacune contenant l'année ou le mois valeurs extraites de la colonne Datetime d’origine. Vous disposez désormais de colonnes séparées avec les informations extraites de l'année et du mois, ce qui facilite leur utilisation à diverses fins d'analyse.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn