Suite

Script Python pour la condition if/elif dans le calculateur de champ


J'ai besoin d'aide pour calculer la dernière colonne (OD_pairs.Ai_) en fonction de la condition ; si travel_cost a une valeur inférieure à 10, OD-pairs.Ai_ prend la valeur de la première colonne (Aij_OjFCij… ) si travel_cost a une valeur supérieure à 10, alors renvoie 0 dans OD_pairs.Ai. Donc, fondamentalement, le troisième champ à calculer est soit la valeur correspondante dans le premier champ, soit zéro, selon la valeur du deuxième champ.


Ma solution est en Python, n'oubliez pas de passer à Python Parser dans la fenêtre Field Calculator.

Vous avez demandé :

Code de script pré-logique :

def calcColumn(cost, Aji): if cost < 10: return Aji elif cost > 10: return 0

OD_pairs.Ai_ =

calcColumn(!Travel_Cost!, !Aij_OjFCij_Income4!)

Gardez à l'esprit que si vous avez coût = 10, cela ne fonctionnera pas, car il ne gère que des tailles supérieures ou inférieures à 10. Vous pouvez également utiliser à la place :

Code de script pré-logique :

def calcColumn(cost, Aji) : si coût < 10 : retourne Aji else : retourne 0