field calculator - логические функции

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
alexey92
Новоприбывший
Сообщения: 6
Зарегистрирован: 09 май 2012, 11:31
Репутация: 0

field calculator - логические функции

Сообщение alexey92 » 22 апр 2013, 17:19

Здравствуйте! В атрибутивной таблице имеются: поле 1, поле 2, поле 3; все представлены натуральными числами.
Необходимо присвоить полю 4 текстовое значение, исходя данных в полях 1,2 и 3.
Хотелось бы узнать, как прописать в коде эти положения, т.е. если "поле 1" = x, "поле 2" = y, "поле 3" = z, то "поле 4" = "ТЕКСТ".

Аватара пользователя
novia
Гуру
Сообщения: 2261
Зарегистрирован: 29 апр 2011, 15:06
Репутация: 489
Откуда: Тель-Авив

Re: field calculator - логические функции

Сообщение novia » 22 апр 2013, 23:40

Используйте расширенный калькулятор (код на vb/python/javascript). Для этого поставьте галку в окне обычного калькулятора

[ Сообщение с мобильного устройства ]
понравилось? жми палец вверх :!:

doujin
Активный участник
Сообщения: 163
Зарегистрирован: 28 июн 2012, 01:02
Репутация: 84
Откуда: Vladivostok

Re: field calculator - логические функции

Сообщение doujin » 23 апр 2013, 01:10

Если выбрать python, то в коде пишем, вместо x, y, z подставляя нужные значения:

Код: Выделить всё

def foo(field1, field2, field3):
if feild1 == x and feild2 == y and feild3 == z:
return u'ТЕКСТ'

Ниже пишем:

Код: Выделить всё

foo(!field1!, !field2!, !field3!)

Но на мой взгляд вы вопрос сформулировали не полностью. Наверняка вам нужно перебрать несколько возможных сочетаний трех полей и для каждого случая в четвертое поле записывать свой текст. В таком случае код стоит модифицировать, что бы не пришлось запускать калькулятор несколько раз.

alexey92
Новоприбывший
Сообщения: 6
Зарегистрирован: 09 май 2012, 11:31
Репутация: 0

Re: field calculator - логические функции

Сообщение alexey92 » 23 апр 2013, 17:24

спасибо за советы, получилось на VB-скрипте (с if...and...else)

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость