Eu tenho um arquivo csv com 133mb de tamanho e mais de 1,3 milhão de linhas de dados. Cada linha de dados tem seu próprio lat / long e eu queria saber qual seria a melhor maneira de exibir esses pontos com base no lat / long no ArcGIS Desktop 10 e, finalmente, transformá-lo em um shapefile de ponto?
Até agora, eu tentei a ferramenta "Make XY Event Layer", mas isso continua falhando ...
ERRO 000212: Não é possível criar a fonte de eventos XY Falha ao executar (MakeXYEventLayer).
O arquivo csv está formatado corretamente e os campos lat / long são numéricos, então não faço ideia do porquê ele continua travando.
Aqui está a aparência das duas primeiras linhas do meu CSV, a primeira linha é o que deve ser o cabeçalho:
"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"
Alguma ideia?
arcgis-desktop
arcgis-10.0
point
csv
error-000212
Furlong
fonte
fonte
Respostas:
Isso pode ser um pouco mais complicado, mas se meus dois centavos valerem alguma coisa (e se você estiver usando produtos do MS Office), recomendo importar o arquivo .csv para um banco de dados .mdb do MS Access como uma tabela. (Nota: existe um limite de tamanho de 2 GB para um banco de dados .mdb ).
Você pode adicionar a tabela .mdb do Access ao documento do ArcMap e clicar com o botão direito do mouse> "Exibir dados x, y":
Ao manter seus dados em um banco de dados e ler a partir dessa tabela para exibir seus pontos de dados x, y, você pode fazer alterações nos dados e essas alterações serão refletidas automaticamente nos pontos de dados x, y na próxima vez que atualizar a exibição do mapa em vez de ter que criar um novo shapefile ou layer view sempre. Essa também parece ser uma maneira mais robusta de gerenciar uma quantidade tão grande de dados.
fonte
Como os valores dos campos Lat e Long
"32.363544","-110.969778"
têm aspas, eles não são realmente tratados como numéricos.Os dados xy exibidos precisam que os campos x e y sejam numéricos.
Remova as aspas circundantes e deve funcionar. Se você tiver acesso a uma máquina unix, o grep / sed facilitaria esse trabalho. Existem também portas do Windows dessas ferramentas.
Além disso, evitaria usar "Longo" como um nome de campo - pode haver casos em que ele é tratado como uma palavra reservada.
fonte
Você tem uma linha de cabeçalho no arquivo CSV que pode confundir o ArcGIS?
Além disso, tente copiar apenas uma das linhas do CSV e veja se funciona - dessa forma, você pode eliminar erros de formatação. Use um editor de texto como o UltraEdit ou o Notepad ++, capaz de abrir arquivos de texto grandes, para copiar sua linha de amostra.
Não sei como o importador do ArcGIS funciona, mas você pode achar que o arquivo é muito grande para suportar, portanto pode ser necessário dividir em pedaços.
fonte
Se você possui o SQL Server Express, poderá fazer algumas das tarefas mais difíceis lá.
Isso é feito a partir de algumas consultas diferentes (onde os lat / long eram campos de texto):
Pode ser necessário configurar o servidor sql para consultas distribuídas ad hoc.
Pode ser um exagero para um trabalho, mas vale a pena se você estiver lidando frequentemente com muitos arquivos diferentes. Embora com os arquivos grandes, convém consultar o bcp.exe ( http://msdn.microsoft.com/en-us/library/aa174646(v=sql.80).aspx ) para a importação em massa.
fonte
Se você deseja apenas criar um shapefile a partir dele, tente o QGIS www.qgis.org O plug-in de texto delimitado que pode ser carregado com o QGIS facilita isso. Se você quiser trazê-lo para o ArcMap, basta garantir a projeção primeiro pelo ArcCatalog.
fonte
Verifique também se os títulos não têm espaços. Por exemplo, "Zona UTM" deve ser "UTM_Zone" Apenas algo a ter em mente, pois foi um problema para mim ao importar.
fonte