J'ai un Dataframe de CVS.
J'aimerais savoir à quelle heure il y a une plus grande probabilité d'avoir la ligne de colonne "d'abord" à 0 entre 23h00 et 23:50. P>
heure = df.set_index('Date').between_time('23:00:00','23:50:00')
3 Réponses :
Que diriez-vous d'utiliser DT accesseurs? Mis à jour avec une extrémité de bout à la fin de votre cas d'utilisation. mask
In Range 0.500000
Out of Range 0.333333
filtre en fonction de l'heure. Ensuite, trouvez le moment le plus courant où est d'abord 0.
try:
(df.set_index('Date').between_time('23:00:00','23:50:00').reset_index()
.loc[lambda x: x.First == 0].Date.dt.time.value_counts().index[0])
except IndexError:
print('No matches')
Vous devez d'abord convertir les données de colonne "Date" sur DateTime Type et vous pouvez appliquer la méthode d'indexation à l'aide de dt code> comme mentionné par @smj