Seite 1 von 1

2 Spalten vergleichen und Wert einer 3. ausgeben

Verfasst: Donnerstag 18. Juni 2015, 14:45
von Etmalina
Hallo, ich suche eine Lösung für folgendes Problem:

Ich habe (in ArcGIS) eine Tabelle in der ich ein neues Feld angelegt habe. Dieses soll folgenden Inhalt haben:

Wenn Spalte a = Spalte b UND Spalte c= Spalte d dann Zellenwert aus Spalte e.

Also nochmal kürzer:

Wenn a=b UND c=d DANN e

Hat jemand eine Idee? Bin über jeden Hinweis dankbar, weil ich bisher nur Abfragen innerhalb einer Spalte gemacht habe aber nicht Spaltenübergreifend...

Ni

Re: 2 Spalten vergleichen und Wert einer 3. ausgeben

Verfasst: Donnerstag 18. Juni 2015, 15:06
von Hyperion
Der Vergleichsoperator in Python ist das ``==``. Für eine Und-Bedingung existiert der binäre ``and``-Operator. Mehr kann man dazu eigentlich nicht sagen, da hier kaum jemand ArcGIS geschweige denn dessen API kennt! :K

Da müsstest Du schon mal zeigen, *wie* eine solche Tabelle von den Datentypen und Funktionen aufgebaut ist!

Für Deinen Pseudo-Code könnte man in Python folgendes schreiben:

Code: Alles auswählen

if a == b and c == d:
    # do something with e

Re: 2 Spalten vergleichen und Wert einer 3. ausgeben

Verfasst: Freitag 19. Juni 2015, 12:09
von Etmalina
Hallo, danke für die Antwort. Die Tabelle ist letztendlich eine dbf, die durch einen sogenannten "field calculator" mit VBA oder Phyton bearbeitet werden kann. siehe [url]https://www.dropbox.com/s/6x96m7i3x9f2f ... 9.png?dl=0
[/url]
VG, Nina

Der pre logic script Code für die Funktion "reclass" sieht beispielsweise so aus:

def Reclass(Bade):
if Bade >0:
return 1
else:
return 0

real_drive=
Reclass(!Bade!)