参考这个' data wrangling'他们给出了一些例子:
#View all observations that occured in 2014
df['2014']
#View all observations that occured in May 2014
df['2014-05']
但是当我尝试这些时,我在Python 3.6笔记本上得到KeyError
例外。
我没有看到有关我的DataFrame的任何有趣内容,与示例不同:
df = pd.read_excel(fn, "tb")
df.set_index(['Date'], inplace=True)
print(type(df.index))
print(type(df.index[0]))
的产率:
<class 'pandas.indexes.base.Index'>
<class 'datetime.datetime'>
Out[33]:
foo bar baz zah
Date
2010-01-04 00:00:00 8.14 78.29 9.21 6.01
2010-01-05 00:00:00 8.81 79.74 10.14 6.15
2010-01-06 00:00:00 8.91 79.80 10.51 5.70
我的错误发生在:
df['2010']
答案 0 :(得分:0)
您的索引不是DatetimeIndex。尝试:
df.index = pd.to_datetime(df.index)
然后您就可以使用pandas awesome datetime functionality的所有内容。
答案 1 :(得分:-1)
您可以使用以下两种方法之一
来完成此操作 import datetime
df = datetime.datetime.now()
print(df.year)
print(df.strftime('%Y'))