Bagaimana cara melakukan If Statement di Field Calculator of ArcGIS for Desktop?

10

Saya memiliki shapefile yang berisi dua bidang angka ("Dist_1" dan "Dist_2"). Saya ingin Perhitungan Bidang yang akan mengisi bidang tambahan ("Hasil") dengan salah satu dari tiga jawaban:

Pertama jika Dist_1 lebih besar dari Dist_2 populasikan Hasil dengan 'Benar' Kedua jika Dist_1 kurang dari Dist_2 terisi dengan 'Salah' dan Ketiga jika Dist_1 dan Dist_2 sama-sama terisi dengan "Sama"

Chris U
sumber
Tolong jangan tambahkan "terima kasih" sebagai jawaban. Setelah Anda memiliki reputasi yang cukup , Anda akan dapat memilih pertanyaan dan jawaban yang menurut Anda sangat membantu. - Dari Ulasan
Midavalo

Jawaban:

15

Parser:

Python

Blok kode:

def calc(f1,f2):

    if f1 > f2:
        return "True"
    elif f1 < f2:
        return "False"
    else:
        return "Equal"

Ekspresi:

calc(!Dist_1!, !Dist_2!)

Atau secara grafis (sayangnya, Anda tidak dapat melihat semua blok kode di sini)

masukkan deskripsi gambar di sini

Paul
sumber
PolyGeo terima kasih - tetapi mendapatkan kesalahan 000989 - Kesalahan parsing: unindent tidak cocok dengan level indentasi luar mana pun (baris 3). Bisakah Anda memecahkan kode ini? !!
Chris U
2
Pertahankan jarak yang konsisten untuk pernyataan if, elif, else (2) serta pernyataan kembali (4). Masing-masing harus pada jalurnya sendiri.
Paul
1
Paul / PolyGeo, terima kasih banyak ini berhasil!
Chris U