¿Unirse a la tabla de Excel para shapefile en ArcMap?

9

Tengo un archivo shape de áreas de super salida de capa inferior (LSOA) para Inglaterra y Gales y tengo una hoja de cálculo de los índices de privación para cada uno de los LSOA en Inglaterra. Quiero unir los datos de privación al shapefile para que puedan asignarse en ArcMap. Intenté unir la tabla a través de la opción Unir y Relacionar> Unir y puse en los campos los datos de LSOA para el archivo de forma y la hoja de cálculo (los datos que coinciden). ¡la tabla de atributos agregó los campos de datos a la tabla de atributos de la hoja de cálculo de Excel pero todos los datos están en blanco!

He intentado mirar el campo "tipo" como he leído que ha sido un problema antes pero parece estar bien.

¿Hay algo que alguien pueda sugerir?

dpc1989
fuente
Vea el hilo relacionado en gis.stackexchange.com/questions/12242/…
whuber
1
Exporte a otro formato, como CSV, Access o DBF. Excel es terrible para la consistencia de los datos: la respuesta de Whuber a esta pregunta relacionada explica por qué.
blah238

Respuestas:

5

¿Son los tipos iguales (es decir, ambos enteros / ambos dobles) tanto en Excel como en ArcMap? También es posible que deba convertir el archivo de Excel en una base de datos o CSV para unirlos (solo use 'guardar como' en Excel para cambiar el tipo de archivo). He tenido problemas con los archivos de Excel en el pasado, a veces también es porque es el .xlsx (nuevo tipo de archivo para el nuevo MS Office) en lugar de .xls (que debería funcionar con Arc).

Emily
fuente
He intentado guardarlo como CSV, pero no me permite unirme, importé la tabla a una base de datos, ¡pero no aparecerá como uno de los archivos para unirme! ¿Algo más?
dpc1989
¿Tiene la base de datos abierta en otro lugar mientras intenta unirse a ella en Arc? También puede seleccionarlo desde su ubicación en su computadora, ¿tal vez simplemente no se muestra correctamente?
Emily
¿las bases de datos tampoco se muestran en el catálogo de Arc? He hecho a través de Acceso ... sólo sus hojas de cálculo y cosas por el estilo
dpc1989
También puede hacer la unión en ArcCatalogue, reflexionando sobre el punto de Dave. Usaría la función Agregar unión en la caja de herramientas (en Administración de datos).
Emily
eliminar espacios y caracteres especiales de los nombres de campo
Brad Nesom
5

En mi experiencia, debe agregar un ID de objeto a su hoja de cálculo de Excel, dando a cada publicación un número único (entero) antes de hacer la unión en ArcMap. Puede agregar el campo adicional y luego comenzar a escribir 1 en la primera fila, 2 en la siguiente, luego marque los dos valores y arrastre el marcado hacia abajo, luego Excel completa los espacios en blanco por usted.

Steen Kjeldsen
fuente
4

Asegúrese de que no haya espacios en los nombres de archivo, nombres de hoja o nombres de campo.

djq
fuente
4

Verifique todos sus campos numéricos para el relleno oculto. Excel puede ser muy travieso, agregando silenciosamente ceros Y ocultándolos. He experimentado esto en varias ocasiones, más recientemente en una columna de códigos FIPS del tramo censal. (Alguien sabe por qué?)

Ingrese a una celda en blanco y extraiga el primer dígito de un valor que no debería comenzar con cero usando IZQUIERDA ([celda], 1). Luego dale la vuelta y verifica un valor que no debería terminar con cero usando la función DERECHA ([celda], 1). Puede usar las funciones de recorte de Excel si encuentra polizones.

rec.thegeom
fuente
3

¿coinciden exactamente los campos que está intentando unir ?, si las filas no están en el mismo orden en ambas tablas, siempre obtendrá espacios en blanco.

si realiza una copia del archivo de forma y abre el dbf de la copia en Excel, puede pegar sus datos en la copia y aplicar "guardar como" y sobrescribir los datos en el nuevo archivo de forma

ghostfacemapper
fuente
2
"si las filas no están en el mismo orden en ambas tablas" - No creo que esto sea cierto. La posición de la fila no está relacionada para unirse; Un ejemplo de esto sería una unión de uno a muchos que se puede hacer con un shapefile y una tabla de Excel.
djq
Esto parece sucederme cada vez que intento unir datos espaciales con datos no espaciales y termino con campos de datos en blanco. si clasifico las filas para que coincidan, entonces se une perfectamente. pero creo que tienes razón celenius esto no debería suceder alguna idea por qué esto está sucediendo
ghostfacemapper
1
¿Estás seguro de que tienes tipos de datos coincidentes? Por ejemplo, '1' almacenado como una cadena y '1' almacenado como flotante no coincidirán entre sí, incluso si el nombre del campo es el mismo. Creo que una forma segura de unir es exportar los datos como un csv, asegurándose de que no haya espacios en los nombres de archivos o campos, asegurándose de que sus tipos de datos coincidan. Tendría cuidado al editar el archivo de forma directamente; creo que las cosas podrían salir mal con bastante facilidad.
djq
gracias celenius la próxima vez que intente unirme
usaré
1

@ghostfacemapper los registros no necesitan estar en el mismo orden. No es cierto del todo.

Ahora, si recibe un error que dice:

ERROR 000339: la entrada [SU NOMBRE DE ARCHIVO] no tiene OID que no se pudo ejecutar (campo de unión).

Puede solucionar el problema 'agregando' un campo objectID utilizando arcGIS para crear una nueva tabla que tenga un objectID. Puede hacerlo exportando su archivo al formato de tabla dBASE. Para hacerlo, agregue el archivo (tabla) a un mapa, podrá ver el archivo en la tabla de contenido en la pestaña Lista por fuente:

  1. clic derecho sobre la mesa
  2. haga clic en Datos
  3. haga clic en Exportar
  4. haga clic en el botón Examinar
  5. cambie el "Guardar como tipo" a "Tabla de dBase"
  6. darle un nuevo nombre y ubicación
  7. clic en Guardar
  8. use el nuevo archivo que acaba de crear para la unión
  9. encontrar a alguien para chocar los cinco!

JMers
fuente