Tengo un marco de datos de coordenadas X, Y que representan puntos a lo largo de los caminos tomados por varias entidades diferentes. Pseudo-datos aquí, pero es más o menos de la forma:
entity_id lat lon time
1001 34.5 14.2 4:55 pm
1001 34.7 14.5 4:58 pm
1001 35.0 14.6 5.03 pm
1002 27.1 19.2 2:01 pm
1002 27.4 19.3 2:08 pm
1002 27.4 19.9 2:09 pm
Lo que me gustaría hacer es agrupar estos puntos entity_idy luego organizarlos secuencialmente a tiempo para crear un LineStringobjeto para cada uno entity_id. La salida será de varias líneas / rutas, cada una correspondiente a un entity_id.
Puedo hacer esto recorriendo cada entity_iduno de los puntos entity_idy usando las instrucciones proporcionadas aquí , pero ¿hay alguna forma más rápida / eficiente de hacer esto aprovechando GeoPandas o Shapely, tal vez con groupby?
fuente

df.groupby('entity_id', as_index=False).agg({'geometry': lambda x: ...})