我正在尝试转置具有日期时间索引的数据框。
1 2
2015-01-01 100 20
2015-02-01 100 50
2015-03-01 100 78
但是,当我尝试从这些数据框中选择coluns时,却出现了键盘错误:
df.T[['2015-01-01', '2015-02-01']]
错误:
KeyError: "None of [Index(['2015-01-01', '2015-02-01'], dtype='object', name='CohortMonth')] are in the [columns]"
如何选择它们以免产生错误?
答案 0 :(得分:2)
因为按列表选择是必不可少的相同类型-此处的日期时间用于列表DatetimeIndex in columns
:
#if necessary create DatetimeIndex
df.index = pd.to_datetime(df.index)
print (df.index)
DatetimeIndex(['2015-01-01', '2015-02-01', '2015-03-01'], dtype='datetime64[ns]', freq=None)
df = df.T[pd.to_datetime(['2015-01-01', '2015-02-01'])]
print (df)
2015-01-01 2015-02-01
1 100 100
2 20 50