首页 > 解决方案 > 如何在列名属于日期时间 dtypes 的数据框中选择列?

问题描述

我有以下示例表:

cols = ['2000-01-01', '2000-02-01', '2001-03-01', '2001-04-01', '2002-05-01']
vals = np.arange(5)
df = pd.DataFrame(data=[vals], columns=cols)
df.columns = pd.to_datetime(df.columns)

如何选择特定年份或月份的所有列?

例如,我在 2000 年尝试了以下内容

df.loc[:,'2000']

但有一个关键错误

谢谢!

标签: pythonpandasdataframepython-datetime

解决方案


您可以使用pandas.DataFrame.filter通过正则表达式选择列:

df.filter(regex=('2000.*')) # 2000-01-01, 2000-02-01

推荐阅读