Ho una serie temporale indicizzata da datetime.date. Ecco le prime nodi della serie:Come si suddividono le serie temporali dei panda sulle date non presenti nell'indice?
1999-12-31 0
2000-06-30 170382.118454
2000-12-29 -319260.443362
voglio affettare dall'inizio della serie fino al 28 dicembre 2000, ma questo non funziona in quanto tale data non è nell'indice (ho un KeyError quando provo original_series[:datetime.date(2000,12,28)]
. ho anche provato a convertire l'indice al timestamp, ma che dà risultati molto spuri (che produce nodi finti, vedi sotto), quindi mi sono chiesto se c'è un buon approccio a questo problema.
test = pd.Series(original_series.values, map(pd.Timestamp, original_series.index))
A prima vista, questo sembra a posto:
1999-12-31 0.000000
2000-06-30 170382.118454
2000-12-29 -319260.443362
Ma poi cerco di fare il mio affettare (da dove vengono quei giorni in più a gennaio 2000 vengono?):
In [84]: test[:'2000-12-28']
Out[84]:
1999-12-31 0.000000
2000-06-30 170382.118454
2000-01-03 -71073.979016
2000-01-04 100498.744748
2000-01-05 91104.743684
2000-01-06 82290.255459
tuo answe Ho assolutamente ragione, ma ero anche esageratamente stupido - non avevo ordinato le mie serie temporali per indice, quindi la mia confusione riguardo le date "fabbricate". Grazie per l'aiuto. –