J'ai un fichier csv d'une taille de 133 Mo et contenant plus de 1,3 million de lignes de données. Chaque ligne de données a son propre lat / long et je me demandais quelle serait la meilleure façon d'afficher ces points en fonction du lat / long dans ArcGIS Desktop 10 et finalement de le transformer en un fichier de formes de points?
Jusqu'à présent, j'ai essayé l'outil "Make XY Event Layer" mais cela continue d'échouer ...
ERREUR 000212: impossible de créer la source d'événements XY. Échec d'exécution (MakeXYEventLayer).
Le fichier csv est correctement formaté et les champs lat / long sont numériques, donc je n'ai aucune idée pourquoi il continue de planter.
Voici à quoi ressemblent les 2 premières lignes de mon CSV, la première ligne devrait être ce qui devrait être l'en-tête:
"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"
Des idées?
Réponses:
Cela peut être un peu plus compliqué, mais si mes deux cents valent quelque chose (et si vous utilisez des produits MS Office), je vous recommande d'importer votre .csv dans une base de données MS Access .mdb sous forme de tableau. (Remarque: il existe une limite de taille de 2 Go pour une base de données .mdb ).
Vous pouvez ensuite ajouter cette table Access .mdb dans votre document ArcMap et faire un clic droit> "Afficher les données x, y":
En conservant vos données dans une base de données et en lisant ce tableau pour afficher vos points de données x, y, vous pouvez apporter des modifications à vos données et ces modifications seront automatiquement reflétées dans les points de données x, y la prochaine fois que vous actualiserez l'affichage de la carte au lieu d'avoir à créer à chaque fois un nouveau fichier de formes ou vue de calque. Cela semble également être un moyen plus robuste de gérer une telle quantité de données.
la source
Étant donné que les valeurs des champs Lat et Long
"32.363544","-110.969778"
sont entourées de guillemets, elles ne sont pas vraiment traitées comme des valeurs numériques.Pour afficher les données xy, les champs x et y doivent être numériques.
Supprimez les guillemets environnants et cela devrait fonctionner. Si vous avez accès à une machine unix, grep / sed rendrait ce travail plus facile. Il existe également des ports Windows pour ces outils.
De plus, j'éviterais d'utiliser "Long" comme nom de champ - il pourrait y avoir des cas où il est traité comme un mot réservé.
la source
Avez-vous une ligne d'en-tête dans le fichier CSV qui pourrait être source de confusion pour ArcGIS?
Essayez également de copier une seule des lignes du CSV et voyez si cela fonctionne - de cette façon, vous pouvez éliminer les erreurs de formatage. Utilisez un éditeur de texte comme UltraEdit ou Notepad ++ qui sont capables d'ouvrir de gros fichiers texte, pour copier votre exemple de ligne.
Je ne sais pas comment fonctionne l'importateur ArcGIS, mais vous pouvez trouver que le fichier est trop volumineux pour qu'il puisse y faire face, il peut donc avoir besoin d'être divisé en morceaux.
la source
Si vous avez SQL Server Express, vous pourrez peut-être faire une partie du soulèvement.
Ceci est bricolé à partir de quelques requêtes différentes (où les lat / long étaient des champs de texte):
Vous devrez peut-être configurer le serveur SQL pour les requêtes distribuées ad hoc.
Cela peut être exagéré pour 1 travail, mais ça vaut le coup si vous traitez fréquemment de nombreux fichiers différents. Bien qu'avec les gros fichiers, vous souhaitiez peut-être consulter bcp.exe ( http://msdn.microsoft.com/en-us/library/aa174646(v=sql.80).aspx ) pour l'importation en bloc.
la source
Si vous souhaitez simplement créer un fichier de formes à partir de celui-ci, essayez QGIS www.qgis.org Le plugin de texte délimité qui peut être chargé à partir de QGIS facilite cela. Si vous souhaitez ensuite l'intégrer dans ArcMap, assurez-vous d'abord de la projection via ArcCatalog.
la source
Assurez-vous également que vos titres n'ont pas d'espaces. Par exemple, "UTM Zone" devrait être "UTM_Zone". Juste quelque chose à garder à l'esprit, car c'était un problème pour moi lors de l'importation.
la source