Tengo un archivo csv que tiene un tamaño de 133 MB y tiene más de 1.3 millones de líneas de datos. Cada línea de datos tiene su propio lat / long y me preguntaba cuál sería la mejor manera de mostrar esos puntos basados en los lat / longs en ArcGIS Desktop 10 y, finalmente, convertirlo en un archivo de forma de punto.
Hasta ahora he probado la herramienta "Crear capa de evento XY", pero eso sigue fallando ...
ERROR 000212: No se puede crear el origen del evento XY Error al ejecutar (MakeXYEventLayer).
El archivo csv está formateado correctamente y los campos lat / long son numéricos, por lo que no tengo idea de por qué sigue fallando.
Así es como se ven las 2 primeras líneas de mi CSV, la primera línea es lo que debería ser el encabezado:
"LAT","LONG","CUSTOMER_MASTER_ID","STORE_NBR","TRANSACTION_DT","SKU_DIVISION_ID","SKU_DEPARTMENT_ID","SKU_CLASS_ID","SKU_CATEGORY_ID","SKU_NBR","SALES_AMT"
"32.363544","-110.969778","2000000792627","2940","8/11/2010","2060","3920","5120","84021","5127866","13.99"
¿Algunas ideas?
fuente
Respuestas:
Esto puede ser un poco más complicado, pero si mis dos centavos valen algo (y si está usando productos de MS Office), recomendaría importar su .csv a una base de datos de MS Access .mdb como una tabla. (Nota: hay un límite de tamaño de 2 GB para una base de datos .mdb ).
Luego puede agregar esa tabla .mdb de Access en su documento de ArcMap y hacer clic con el botón derecho> "Mostrar datos x, y":
Al mantener sus datos en una base de datos y leer de esa tabla para mostrar sus puntos de datos x, y, puede realizar cambios en sus datos y esos cambios se reflejarán automáticamente en los puntos de datos x, y la próxima vez que actualice la visualización del mapa en lugar de tener que crear un nuevo shapefile o vista de capa cada vez. Esto también parece una forma más sólida de administrar una cantidad de datos tan grande.
fuente
Como los valores de los campos Lat y Long
"32.363544","-110.969778"
tienen comillas, no se tratan realmente como numéricos.Los datos de visualización xy necesitan que los campos x e y sean numéricos.
Elimine las comillas circundantes y debería funcionar. Si tiene acceso a una máquina Unix grep / sed, seguro que facilitaría este trabajo. También hay puertos de Windows de estas herramientas.
Además, evitaría usar "Long" como nombre de campo; puede haber casos en los que se trate como una palabra reservada.
fuente
¿Tiene una línea de encabezado en el archivo CSV que podría confundir a ArcGIS?
Además, intente copiar solo una de las líneas del CSV y vea si funciona, de esa manera puede eliminar los errores de formato. Use un editor de texto como UltraEdit o Notepad ++ que sean capaces de abrir archivos de texto grandes para copiar su línea de muestra.
No sé cómo funciona el importador de ArcGIS, pero puede encontrar que el archivo es demasiado grande para que pueda manejarlo, por lo que es posible que deba dividirse en trozos.
fuente
Si tiene SQL Server Express, es posible que pueda hacer algo de trabajo pesado allí.
Esto se combina a partir de un par de consultas diferentes (donde el lat / long eran campos de texto):
Es posible que deba configurar el servidor sql para consultas distribuidas ad hoc.
Puede ser excesivo para 1 trabajo, pero vale la pena si se trata con frecuencia de muchos archivos diferentes. Aunque con los archivos grandes, es posible que desee mirar bcp.exe ( http://msdn.microsoft.com/en-us/library/aa174646(v=sql.80).aspx ) para la importación masiva.
fuente
Si solo desea crear un shapefile a partir de él, pruebe QGIS www.qgis.org El complemento de texto delimitado que se puede cargar desde QGIS lo hace fácil. Si luego desea llevarlo a ArcMap, asegúrese de que la proyección se realice primero a través de ArcCatalog.
fuente
También asegúrese de que sus títulos no tengan espacios. Por ejemplo, "UTM Zone" debería ser "UTM_Zone" Solo algo a tener en cuenta, ya que fue un problema para mí al importar.
fuente