Utilizzo una matrice di forme 2D per memorizzare coppie di longitudini + latitudini. A un certo punto, devo unire due di questi array 2D e quindi rimuovere qualsiasi voce duplicata. Ho cercato una funzione simile a numpy.unique, ma non ho avuto fortuna. Qualsiasi implementazione sono stato pensando a un aspetto molto "non ottimizzato". Per esempio, io sto cercando di convertire l'array in una lista di tuple, rimuovendo i duplicati con set, e poi la conversione ad un array di nuovo:Rimozione di colonne e righe duplicate da un array NumPy 2D
coordskeys = np.array(list(set([tuple(x) for x in coordskeys])))
Ci sono delle soluzioni esistenti, in modo da non reinventare la ruota ?
mettere in chiaro, sto cercando:
>>> a = np.array([[1, 1], [2, 3], [1, 1], [5, 4], [2, 3]])
>>> unique_rows(a)
array([[1, 1], [2, 3],[5, 4]])
BTW, ho voluto usare solo una lista di tuple per esso, ma le liste erano così grande che hanno consumato la mia RAM 4GB + 4GB swap (gli array numpy sono più efficienti in termini di memoria).
Vedere http://stackoverflow.com/questions/7989722/finding-unique-points-in-numpy-array – joris