Considere un archivo csv:
string,date,number
a string,2/5/11 9:16am,1.0
a string,3/5/11 10:44pm,2.0
a string,4/22/11 12:07pm,3.0
a string,4/22/11 12:10pm,4.0
a string,4/29/11 11:59am,1.0
a string,5/2/11 1:41pm,2.0
a string,5/2/11 2:02pm,3.0
a string,5/2/11 2:56pm,4.0
a string,5/2/11 3:00pm,5.0
a string,5/2/14 3:02pm,6.0
a string,5/2/14 3:18pm,7.0
Puedo leer esto y reformatear la columna de fecha en formato de fecha y hora:
b=pd.read_csv('b.dat')
b['date']=pd.to_datetime(b['date'],format='%m/%d/%y %I:%M%p')
He intentado agrupar los datos por mes. Parece que debería haber una forma obvia de acceder al mes y agrupar por eso. Pero parece que no puedo hacerlo. ¿Alguien sabe cómo?
Lo que estoy intentando actualmente es volver a indexar por la fecha:
b.index=b['date']
Puedo acceder al mes así:
b.index.month
Sin embargo, parece que no puedo encontrar una función para agrupar por mes.
resample
(cuando proporciona la funcionalidad que necesita) o usarTimeGrouper
:df.groupby(pd.TimeGrouper(freq='M'))