首页 >后端开发 >Python教程 >如何从 Pandas 日期时间列中有效提取年份和月份?

如何从 Pandas 日期时间列中有效提取年份和月份?

Susan Sarandon
Susan Sarandon原创
2025-01-03 04:24:38691浏览

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

从 Pandas 日期时间列中提取年份和月份

从 Pandas DataFrame 的日期时间列中提取年份和月份可能是一项简单的任务。让我们重新审视上述问题并提供全面的解决方案。

一种方法是对日期时间列进行重新采样,以按频率(在本例中为按月)对其进行分组。但是,提供的代码会遇到错误,因为重采样操作仅对 DatetimeIndex 或 periodIndex 对象有效。

另一个常见的解决方案是对 Datetime 列的每个元素应用 lambda 函数,对字符串进行切片以提取只是年份或月份部分。但是,由于 Datetime 列元素的 Timestamp 类型缺乏切片功能,此方法会失败。

相反,我们推荐以下解决方案:

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

或者,这种简洁的方法可以使用语法:

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

此操作创建新的“年”和“月”列,每个列包含从原始日期时间列中提取的年份或月份值。现在,您拥有包含提取的年份和月份信息的单独列,可以更轻松地将它们用于各种分析目的。

以上是如何从 Pandas 日期时间列中有效提取年份和月份?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn