Tengo una lista de conjuntos dados por,
sets1 = [{1},{2},{1}]
Cuando encuentro los elementos únicos en esta lista usando numpy's unique, obtengo
np.unique(sets1)
Out[18]: array([{1}, {2}, {1}], dtype=object)
Como se puede ver visto, el resultado es incorrecto como {1}se repite en la salida.
Cuando cambio el orden en la entrada haciendo elementos similares adyacentes, esto no sucede.
sets2 = [{1},{1},{2}]
np.unique(sets2)
Out[21]: array([{1}, {2}], dtype=object)
¿Por qué ocurre esto? ¿O hay algo mal en la forma en que lo he hecho?
sets1.sort()no cambia el orden de la lista. Creo que debe crear una funciónfpara ordenar los conjuntos según los criterios que desee, y luego pasarsets1.sort(key=f)anp.unique()