29 mar 2022

Cómo unir tablas en QGIS

Unir tablas dbf en shp

 Vamos a plantear cómo unir tablas con QGIS. Esta operación sirve para unir  (“Join”) la información contenida en una tabla con formato dbf, realizando una unión a tabla de atributos de un shapefile. Puede ser que tengamos datos en una archivo Excel, en una hoja de cálculo (ODF), un archivo de base de datos (DBF o dBASE) pero no esten referenciados geográficamente, aunque comparten la misma codificación que una capa shp que tengamos.  El formato Shapefile (SHP) es un formato de archivo informático de datos espaciales. Un shapefile es un formato vectorial de almacenamiento digital donde se guarda la localización de los elementos geográficos y los atributos asociados a ellos. No obstante carece de capacidad para almacenar información topológica. Es un formato multiarchivo, es decir está generado por varios ficheros informáticos ( al menos 3: shp - shx - dbf - y puede incluir otros...)

Para unir tablas hay que tener claro:

    •  Cuáles son las dos tablas a unir: los datos que estoy manejando, los atributos y campos a unir.

    •  Cuál es el campo que posee valores iguales en cada tabla; el campo clave común que permitirá asociar los registros de una y otra tabla garantizando su integridad.

    • Cuál es la tabla que va a aumentar el número de campos, de la anexión de datos de la otra tabla.

En primer lugar se añade al proyecto la capa que contiene la información geométrica a través del botón “Añadir capa vectorial”  y la base de datos dbf. Para el caso de formato dbf, también se agrega con “Añadir capa vectorial” y en el selector de tipo de archivo seleccionar Todos los archivos.

Luego accedemos a las propiedades de la capa en que queremos agregar datos,  y en Propiedades de la capa, seleccionamos el apartado Uniones (“Joins”). Para establecer la Unión de tablas presionamos el botón de adición (cruz verde) en la parte inferior de la ventana de Propiedades de la capa.

Aparecerá en pantalla la ventana Añadir unión vectorial (“Add vector join”)…. en la que se deberán de introducir los parámetros para llevar a cabo dicha unión.

    • Unir capa (“Join layer”): Datos_A.dbf

    • Unir campo (“Join field”): CODIGO_INE

    • Campo objetivo (“Target field”): CODIGO_INE (la capa donde se unirán y generarán nuevos campos)

Se puede marcar en la base de la ventana la casilla “Prefijo de nombre de campo personalizado” para que los campos creados por la union que son la sumatoria de los nombres quede con un prefijo mas simple, ej: A_ (la denominación de los campos nuevos aparece en forma compuesta por el nombre de la tabla origen y el nombre que éstos poseían en ella). De esta forma si el campo de datos a unir se llamara dato-a1, en la tabla unión quedaría A_dato-a1.

Luego de pulsar  Aceptar aparecerá registrada dicha unión en las Propiedades de la capa. Hasta el momento se trata de una “unión virtual” entre tablas, para que la unión sea definitiva es necesario guardar la nueva capa generada...Exportar/Guardar objetos como… (“Save as”).

-------------

Con LibreOffice se puede convertir de  en un archivo Excel (xls) u hoja de cálculo (ODF) a un archivo de base de datos (DBF o dBASE) un formato simple para almacenar datos estructurados ( o en sentido contrario, de dbf a xls). Es gratuita y de código abierto que proporciona una aplicación de hoja de cálculo llamada Calc de LibreOffice. Con esta aplicación, puede ver, editar y convertir archivos DBF a otros formatos. Le permite convertir DBF a XLS, XLSX, ODS, CSV, HTML, PDF, TXT y algunos otros formatos.

No hay comentarios:

Publicar un comentario