我有一个像这样的简单数据框。
0 0.00
1 0.00
2 0.07
3 0.09
4 0.09
...
180 13.46
181 13.46
182 15.05
183 15.05
184 15.05
185 15.05
我想将数字索引更改为月日期,但不按时间顺序排列。我希望它是一月,二月,三月,四月,十一月,十二月。我怎样才能使索引进入这些自定义月份,从而跳过我不想要的月份?
答案 0 :(得分:2)
我认为需要:
np.random.seed(2018)
df = pd.DataFrame({'A':np.random.rand(186)})
#print (df)
#365 days
dates = pd.date_range('01-01-2015', '31-12-2015')
dates = dates[dates.month.isin([1,2,3,4,11,12])].strftime('%b-%d')
print (len(dates))
181
#366 days
dates = pd.date_range('01-01-2000', '31-12-2000')
dates = dates[dates.month.isin([1,2,3,4,11,12])].strftime('%b-%d')
print (len(dates))
182
然后:
#filter DaatFrame for same length
df = df.iloc[:len(dates)]
#assign dates
df.index = dates
print (df.head(10))
A
Jan-01 0.882349
Jan-02 0.104328
Jan-03 0.907009
Jan-04 0.306399
Jan-05 0.446409
Jan-06 0.589985
Jan-07 0.837111
Jan-08 0.697801
Jan-09 0.802803
Jan-10 0.107215