Medias rodantes de pandas para datos de series de tiempo duplicados

Veo que Pandas todavía no permite índices de series de tiempo duplicados ( https://github.com/pydata/pandas/issues/643 ), pero se agregarán pronto. Me pregunto si hay una buena manera de aplicar medios de ventana móvil a un conjunto de datos con tiempos duplicados mediante una etiqueta / columna de índice múltiple.

Básicamente tengo un csv de eventos no ordenados que consisten en epochtime, tags jerárquicas (tag1, tag2) y tiempo empleado. Una pequeña muestra:

epochTimeMS,event,tag,timeTakenMS 1331782842801,event1,tag1,16 1331782841535,event1,tag2,1278 1331782842801,event1,tag1,17 1331782842381,event2,tag1,436 

Lo que quiero hacer es crear y graficar medios con diferentes ventanas de ms, por evento y evento + tag. Esto parece que debería lograrse en Pandas, pero no estoy seguro de si tendré que esperar hasta que los índices de series de tiempo duplicados primero. ¿Alguna idea sobre hackear esto en su lugar ahora?

No hay nada que te detenga en este momento:

 In [17]: idf = df.set_index(['tag', 'epochTimeMS'], verify_integrity=False).sort_index() In [18]: idf Out[18]: event timeTakenMS tag epochTimeMS tag1 1331782842381 event2 436 1331782842801 event1 16 1331782842801 event1 17 tag2 1331782841535 event1 1278 In [20]: idf.ix['tag1'] Out[20]: event timeTakenMS epochTimeMS 1331782842381 event2 436 1331782842801 event1 16 1331782842801 event1 17 

El acceso a valores específicos por marca de tiempo causará una excepción (esto se mejorará, como usted menciona), pero ciertamente puede trabajar con los datos. Ahora, si desea una ventana de longitud fija (en el espacio de tiempo), todavía no se admite muy bien, pero he creado un problema aquí:

https://github.com/pydata/pandas/issues/936

Si pudiera hablar en la lista de correo acerca de los requisitos de su API en su aplicación, sería útil para mí y para los demás, ya que estamos trabajando activamente en las capacidades de series de tiempo en este momento.