2017-03-15 6 views
-1

Ich bin neu in der Verwendung von Arcmaps, und ich habe ein Shapefile, das ich ändern möchte, indem neue Felder hinzufügen. Das Shapefile hat Distriktnamen und -grenzen, und ich möchte das BIP pro Kopf in die Shapefiles nach Distriktnamen aufnehmen.So erstellen Sie ein neues Feld basierend auf anderen Feld für Shapefile arcgis

So einfach gesagt, meine Shapefile hat ein Feld, das für die Änderung wichtig ist: Bezirksname; Ich habe meine separate Liste von Bezirksname und BIP pro Kopf, in CSV-Datei.

Ich weiß, wie man mit Listen und Wörterbüchern in Python umgehen, aber wie kann ich diese verwenden, um die Shapefile-Felder zu ändern?

+0

Bei Fragen zu ArcMap und ArcPy empfehle ich die [gis.se] Stack Exchange. – PolyGeo

Antwort

0

Um ein Feld hinzuzufügen, verwenden Sie das Werkzeug AddField, z.

arcpy.AddField_management(in_table, field_name, field_type) 

Um in diesem Feld zu berechnen, verwenden eine UpdateCursor (verknüpfte Hilfeseite und folgende Beispiel ArcMap 10.1+ annehmen). Um zu berechnen, z.B.

with arcpy.da.UpdateCursor(shapefile, ['FIELD1', 'FIELD2', 'FIELD3'] as cursor: 
    for row in cursor: 
     row[2] = row[0]/row[1] # index here matches index of fields listed above 
     cursor.updateRow(row) 
Verwandte Themen