如何从df中删除特定年份

时间:2019-05-16 16:18:08

标签: python pandas dataframe time grouping

df.head()

          HEAT/HOT WATER
created_date    
2015-12-31  169457.0
2016-12-31  155578.0
2017-12-31  152009.0
2018-12-31  153277.0
2019-12-31  76712.0

我想从索引中删除2019

我尝试过但没有成功。

df = df[df['created_date'] != '2019']

1 个答案:

答案 0 :(得分:3)

index转换为序列,以便它支持向量化datetime运算,并使用Series.ne检查哪些年份不是2019

# df.index = pd.to_datetime(df.index)
df[df.index.to_series().dt.year.ne(2019)]

               HEAT/HOTWATER
2015-12-31       169457.0
2016-12-31       155578.0
2017-12-31       152009.0
2018-12-31       153277.0

或者只是df[df.index.year != 2019],因为索引已经是DatetimeIndex,正如@piRSquared在评论中指出的那样