Ho un array di oggetti datetime, e mi piacerebbe trovare quale elemento della matrice è più vicino a una certa data (per esempio datetime.datetime(2014,12,16)
)Trova la data più vicina a una certa data
This post mostra come trova la data più vicina che non è anteriore alla data indicata. Come posso modificare questo codice in modo che possa restituire le date precedenti a una determinata data?
Ad esempio, se la matrice contiene gli elementi datetime.datetime(2014,12,10)
e datetime.datetime(2014,12,28)
, la voce precedente deve essere restituita perché è la più vicina a datetime.datetime(2014,12,16)
in valore assoluto.
Forse potresti provare a ordinare le date, controllare l'indice prima e dopo la data che stai guardando e vedere quale è più vicino ad esso? – Zarwan
Al momento, utilizzo 'np.argwhere' per trovare tutti gli elementi prima e dopo la data specificata e prendere rispettivamente l'ultimo dei primi elementi. Il problema è che a volte non ci sono date dopo il 16 dicembre 2014 nell'array, che è un problema nel mio script. Sarebbe molto più facile trovare la data più vicina. – user3600497
È possibile considerare l'utilizzo di [truncate] (http://stackoverflow.com/questions/9877391/how-to-get-the-closest-single-row-after-a-specific-datetime-index-using-python-p) funzione. –