如何将 datetime64 对象的 pandas 列转换为年份?

How do I convert a pandas column of datetime64 objects to the year?

我正在使用 pandas 数据框,其中一列是 datetime64 对象。我需要绘制每年行数的条形图,并将数据框切片为一个月 运行ge(例如 2011 年 1 月至 2011 年 3 月)。我想我可以添加一个仅捕获年份或月份的列,但我该怎么做呢?

我运行

df['year'], df['month'] = df['date'].dt.year, df['date'].dt.month
df

但出现 AttributeError:只能将 .dt 访问器与 datetimelike 值一起使用

有效的是,正如其他问题中所回答的那样:

df['date'] = pd.to_datetime(df['date'])
df['year'], df['month'] = df['date'].dt.year, df['date'].dt.month

让我的情况有所不同的是,我昨晚在 Jupyter notebook 上完成了我的工作,然后就睡着了。因此,当我再次启动计算机时,包含将日期时间列转换为 datetime64 对象 的代码行并不是 运行。傻我。在我重新运行它们之后,代码起作用了。