Tengo un archivo de forma de puntos con miles de puntos. Tiene un campo de código de identificación que se supone que es único. De vez en cuando, el empleado de entrada de datos escribe incorrectamente la ID creando duplicados. En este momento estoy desplazando manualmente el campo para encontrar el duplicado.
¿Hay otra forma de hacer esto usando el generador de consultas de búsqueda?
qgis
query
fields-attributes
obsidianz
fuente
fuente
Respuestas:
Si las ID son consecutivas, agregaría una nueva columna temporal con valores únicos como @ Ship.shp sugerido y luego usaría el generador de consultas para buscar ID! = UniqueID.
Eso devolvería los duplicados directamente. Después de corregir las ID originales, elimine la columna adicional o repita todo el proceso según sea necesario; no está claro qué tipo de patrón deben coincidir con sus ID. Si solo necesitan ser únicos, primero tenga en cuenta el último valor y luego puede editar las ID incorrectas en una iteración, simplemente pasando el número a medida que avanza.
fuente
Otra forma gráfica, dinámica y, lo más importante, simple de detectar atributos duplicados: use el generador de expresiones de QGIS.
Resalte duplicados en la tabla de atributos :
Habilite el formato condicional (vea la flecha roja a continuación) con la siguiente condición:
Para agrupar todos los duplicados en la parte superior, haga clic con el botón derecho en la columna, seleccione Ordenar
Ingrese la expresión anterior sin el
>1
, y anule la selección de Ordenar ascendente.Resalte las características con atributos duplicados en el lienzo :
Puede agregar un nuevo símbolo o etiqueta con el filtro establecido en la condición anterior.
Y, por supuesto, puede habilitar una anulación derivada de datos basada en lo mismo.
Por ejemplo, si desea resaltar etiquetas para entidades con un atributo duplicado, puede configurarlo para dibujar un fondo de etiqueta (= 1) con la siguiente anulación:
para lograr algo como lo siguiente
En ambas situaciones, por supuesto, una vez que eliminas o cambias los atributos duplicados, el formato / estilo se actualiza instantáneamente.
fuente
Use el complemento Group Stats y establezca la ID como una clasificación de campo. Puede ver cuántas veces se ha ingresado cada valor en la columna 'contar'.
fuente
Una forma rápida (aunque poco elegante) de hacer esto es ir a las propiedades de la capa, seleccionar Estilo - Categorizado usando la columna que le interesa. Aplicar esto, luego hacer clic derecho en la capa en la ventana de capas y verificar el Recuento de características caja. Luego expanda la capa en la ventana de capas e inmediatamente podrá ver cuántas veces se ingresó cada valor.
fuente
Esta es una buena pregunta en la que me tropecé. No me gusta ninguna de las respuestas que se han dado hasta ahora. Tengo un conjunto de datos válido con ID únicos que no son secuenciales ni enteros. El problema es que el conjunto de datos contiene geometrías individuales, pero algunos límites son de geometría múltiple. Mi tarea es identificar y unir estas geometrías.
Recomiendo usar DB Manager y SQL para este tipo de trabajo. El DB Manager ahora es parte de QGIS. Debe exportar sus datos a PostGIS o un conjunto de datos SpatiaLite. De todos modos, SpatiaLite debería ser el formato de datos basado en archivos de elección.
Ahora puede usar count (), group by y order by como desee y debería poder resolver este y otros problemas con bastante rapidez.
fuente
Sí, me golpeé la cabeza contra la pared por un problema similar.
Aquí está mi script para eliminar características con las mismas ID. Toma la primera entidad con más de un atributo de índice y la escribe en una nueva clase de entidad.
fuente
También puede usar la división por atributo y terminar con una tabla separada para cada valor.
Sin embargo, me gusta la sugerencia de Rayo. excepto que statist no funciona como yo pensaba.
Da una cuenta de valores únicos pero no ayuda con cuáles son esos valores.
Otro software podría agregar un campo de recuento y permitirle exportarlo a csv u otro formato de hoja de cálculo.
Mi sugerencia para la capa dividida por atributo está en las herramientas de administración de vectores
divida sus datos en cualquier campo 1 y tendrá sus cuentas.
mucho más poco elegante que la solución de ship.ship
fuente