[pyar] Lista agrupada
Alejandro Santos
listas en alejolp.com
Lun Sep 26 09:16:44 ART 2011
2011/9/26 John Rowland Lenton <john.lenton en canonical.com>:
>
> no leí todo el thread de respuesta, aunque le pegué una ojeada y no ví
> nadie que te sugieriera itertools.groupby. Sobre todo para listas largas
> hace lo que querés.
>
> Primero, ordená lo que querés agrupar. Después, groupby sobre la data
> usando la misma función que usaste para ordenar, y salís hecho. Así:
>
> data.sort(key=operator.itemgetter(2))
>
> for k, g in itertools.groupby(data, key=operator.itemgetter(2)):
> print k, list(g)
>
Estaba por sugerir algo parecido. Algunos lo conocen como "algoritmo
corte control", y la idea es agrupar las filas por algun criterio:
- Ordenar los datos por alguna columna.
- Recorrer mientras los datos de la columna ordenada sean iguales.
--
Alejandro Santos
More information about the pyar
mailing list