jueves, 14 de julio de 2016

Renombrar y ordenar columnas de tabla en Shape

El Shape es un formato abanderado por ESRI, es limitado pero esto no le ha impedido el posicionarse como el formato por excelencia para intercambio de información espacial.
Existen flujos de trabajo que exigen que los campos se llamen de determinada manera y la alternativa racional es renombrar los campos del insumo en lugar de elaborar de nuevo un modelo o script.
En bases de datos renombrar una columna y ordenarlo es una operación trivial (proyección).
Una de las maneras que tiene ESRI de promover el uso de su formato propietario (gdb) es limitar las funcionalidades del formato shape y a pesar del clamor de sus usuarios esta funcionalidad no ha sido añadida como tampoco el soporte de valores nulos en campo numérico (que peligrosamente el software de ESRI vuelve 0 sin preguntar al usuario).
Una de las limitaciones en funcionalidad que presenta el software de ESRI es que no hay una manera de renombrar un campo, una forma de hacerlo en arcgis requiere varios pasos:

  1. Crear un nuevo campo.
  2. Calcular los valores del nuevo campo con el campo anterior.
  3. Eliminar el campo original 

Hay varias fuentes que explican cómo hacerlo en Arcgis Otra opción es la adquisición de la extensión "Defense Mapping" pero no justifica la inversión de miles de dólares para una operación tan simple.
Es evidente que debería haber una manera más directa de hacerlo. Este proceso puede resultar engorroso cuando son muchos campos ya que vuelve tres operaciones algo que debería ser una sola operación. Por otro lado tiene la ventaja de que en la operación con la calculadora se podría por ejemplo volver numérico una columna que tenga almacenado como texto valores numéricos o volver valores decimales a enteros además de renombrar la nueva columna.

Manipulación del archivo dbf 

Una solución se puede lograr manipulando directamente el archivo dbf, esto no es posible con las últimas versiones de excel ya que aunque abren archivos dbf (IV) no se puede guardar en este formato. Es una práctica común de los software comerciales no soportar los formatos adoptados por software libre. Software gratuitos como libre office y open office abren y guardan en este formato.
Se debe utilizar la codificación adecuada

Al abrir un dbf vemos algo como esto:


Manipulando los encabezados (primera fila del archivo) se puede modificar el nombre, tipo y precisión numérica de los datos, siempre y cuando el contenido de las celdas lo permita. En cada celda del encabezado aparece el nombre del campo separado por una coma sigue la letra N= Numeric o  C= Character que define el tipo, después se define la longitud y precisión del campo. 
La manipulación directa del dbf es de alto riesgo no se deben cambiar el orden de los renglones también se pueden ordenar columnas.

Table mannager de Qgis

La manera mas sencilla de ordenar, eliminar y renombrar campos de un archivo shape es con el table manager de Qgis. Para activar este complemento se debe ingresar al menú Plugins > Manage and install Plugins...

En las últimas versiones el complemento viene instalado en todo caso se puede ubicar fácilmente por la barra de búsqueda

Si aparece en negrilla quiere decir que el complemento está instalado, si no aparece en negrilla basta hacer click sobre el mismo y se activa la opción "install plugin"

Una vez instalado el plugin se debe activar poniendo la x en la casilla

Para empezar una edición el complemento se encuentra en la barra de vector

El complemento tiene una interfaz muy sencilla que permite ordenar, renombrar, insertar nuevos campos y "clonar" repetir con otro nombre el contenido de una columna existente.

Esta es la mejor manera de llevar una tabla de un shape a la forma necesaria para un flujo de trabajo. Automáticamente se hace una copia de respaldo del archivo dbf y se hacen todas las operaciones necesarias, la segunda pestaña muestra una vista preliminar con los datos de la tabla antes de materializar los cambios en el nuevo dbf.


No hay comentarios:

Publicar un comentario