Pandas 按月份筛选列

Pandas 按月份筛选列,pandas,Pandas,我有一个数据框,其中的列是日期时间变量,格式为year-mm-dd 我想过滤数据帧,这样我就只有特定月份的列了。我已经搜索了整个论坛,找不到任何人处理列为datetime,只有索引 最好,您需要使用loc: df = df.loc[:, df.columns.month == 1] 样本: rng = pd.date_range('2017-01-03', periods=5, freq='3M') df = pd.DataFrame({'a': range(5)}, index=rng).T

我有一个数据框,其中的列是日期时间变量,格式为year-mm-dd

我想过滤数据帧,这样我就只有特定月份的列了。我已经搜索了整个论坛,找不到任何人处理列为datetime,只有索引

最好,

您需要使用
loc

df = df.loc[:, df.columns.month == 1]
样本

rng = pd.date_range('2017-01-03', periods=5, freq='3M')
df = pd.DataFrame({'a': range(5)}, index=rng).T
print (df)
   2017-01-31  2017-04-30  2017-07-31  2017-10-31  2018-01-31
a           0           1           2           3           4

df = df.loc[:, df.columns.month == 1]
print (df)
   2017-01-31  2018-01-31
a           0           4

你能添加一些数据样本和预期输出吗?回答得很好!