Mehr

Verwenden von If-Anweisungen in ArcGIS Calculate Field?

Verwenden von If-Anweisungen in ArcGIS Calculate Field?


Ich habe noch nie Python-Skripte verwendet und kann nicht herausfinden, wie man eine If-Anweisung im Feldrechner-Tool verwendet.

Ich habe ein Feld namens 'MAX_GRIDCODE', das die höchste Kraft zurückgibt, der ein Teil der Infrastruktur ausgesetzt ist. Ich brauche diese Zahl, um eine einfache Schadensschätzung im Feld 'DI' zu berechnen.

Die Aussagen die ich brauche sind:

Wenn "Max_GRIDCODE" >0 und <=0.5 dann "DI" = 1 Wenn "Max_GRIDCODE" >0.5 und <=1 dann "DI" = 2 Wenn "Max_GRIDCODE" >1 und <=1.5 dann "DI" = 3 Wenn " Max_GRIDCODE“ >1,5 und <=2 dann „DI“ = 4 Wenn „Max_GRIDCODE“ >2 dann „DI“ = 5

Hat jemand Tipps zum Codieren mit ArcGIS 10.2 for Desktop?


CalculateField-Tool öffnen

für Parameter 'Feldname' angeben: DI

für 'Expression' Parameter angeben: x(!Max_GRIDCODE!)

Geben Sie für den Parameter 'Code Block' den folgenden Code an

def x(v): if v > 2: Rückgabe 5 elif v > 1.5: Rückgabe 4 elif v > 1: Rückgabe 3 elif v > 0.5: Rückgabe 2 else: Rückgabe 1

Schau das Video: Calculating Area of Polygons using ArcGIS