Vai al contenuto

Rimuovere elementi duplicati in base a una condizione su un'altra colonna di attributi

gis.stackexchange : https://gis.stackexchange.com/questions/419159/removing-duplicate-features-based-on-a-condition-on-another-attribute-column-in

Rimuovere elementi duplicati in base a una condizione su un’altra colonna di attributi in QGIS. Esempio, tabella degli attributi di uno shapefile poligonale:

Selezione per espressione

Column_A != minimum (Column_A, group_by:=Column_B)

In linguaggio umano:

Seleziona tutte le righe per cui la Column_A è diversa != dal valore minimo minumum calcolato nel campo Column_A dopo aver raggruppato usando i valori della Column_B.

Si utilizza il != in quanto occorre rimuovere i dati duplicati.

Geoprocessing

Utilizzando l'algoritmo aggrega:

espressione utilizzata:

with_variable(
    'cucu',
    array_agg( "Column_A" , "Column_B" ),
array_agg( "Column_C" , "Column_B" )
                          [array_find(@cucu,array_min(@cucu))]
                     )

per maggiori info, leggi qui: https://pigrecoinfinito.com/2021/12/18/rimozione-di-elementi-duplicati-in-base-a-una-condizione-su-unaltra-colonna-di-attributi-in-qgis/

il file di esempio è scaricabile qui


Funzioni e variabili utilizzate: