Вычислить поле (GeoAnalytics Desktop)

Краткая информация

Создает слой с вычисленными значениями поля.

Использование

  • Вычислить поле можно применять к таблицам, точечным, линейным или полигональным объектам.

  • Вычислить поле всегда создает слой. Он не влияет на входные данные. Одновременно можно вычислить значения лишь в одном поле.

  • Вы можете вычислить значения для существующего поля или для нового поля, которое вы добавляете, создав уникальное имя поля.

  • Выражения создаются с помощью Arcade. Более подробно см. Выражения Arcade в инструментах геоаналитики Desktop.

  • В выражениях Arcade может учитываться возможность отслеживания. Для выражений с отслеживанием требуется, чтобы для данных была включена поддержка времени с типом времени Моментальный, и было указано поле отслеживания. Более подробно о построении выражений с учетом трекинга см. в разделе Пример с учетом трекинга.

  • Чтобы включить отслеживание в вычислениях, надо сделать следующее:

    • Используйте слой с поддержкой времени и с мгновенным типом времени.
    • Отметьте опцию С учетом трекинга.
    • Выберите поля для идентификации треков

  • Треки представлены с помощью уникальной комбинации одного или нескольких полей трека. Например, если поля flightID и Destination используются в качестве идентификаторов трека, следующие объекты ID007, Solden и ID007, Tokyo попадут в два отдельных трека, поскольку они имеют отличающиеся значения в поле Destination.

  • Аналогичный анализ можно выполнить следующим образом:

    • Инструмент геообработки Вычислить поле в наборе инструментов Управление данными

  • Применение границ временного интервала разделяет треки на заданные интервалы. Например, если вы выбрали интервал в 1 день, начиная с 9 утра 1 января 1 января 1990 г. каждый трек будет обрезан в 9 утра каждого дня и проанализирован в пределах этого сегмента. Такое разбиение позволяет ускорить обработку, так как небольшие треки для анализа создаются быстрее. Если разбиение на повторяющиеся интервалы может влиять на результаты анализа, рекомендуется использовать обработку больших данных. Для задания временных границ, в анализе должно использоваться время.

  • Дополнительно к вычисляемому полю, выходные данные могут включать следующие типы полей:

    • ObjectID
    • datetime – если в результатах используется время. Новыми полями являются instant_date для типа времени Мгновенный, а также start_date и end_date для типа времени Интервал.

  • Можно повысить производительность инструмента Вычислить поле, выполнив одно или несколько из следующих действий:

    • Установите параметр среды Экстент так, чтобы вы анализировали только интересующие вас данные.
    • Если вы используете треки, разбейте их с помощью параметра Установка временного шага.
    • Выберите только С учетом трекинга, если ваше выражение включает выражение трекинга.
    • Используйте локальные данные там, где запускается анализ.

  • Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.

  • При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если используется размещенный векторный слой, рекомендуется применить ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Чтобы использовать ArcGIS GeoAnalytics Server для выполнения анализа, см. GeoAnalytics Tools.

Параметры

ПодписьОписаниеТип данных
Входной слой

Входные объекты, для которых требуется вычислить поле.

Table View
Выходной набор данных

Новый набор данных с вычисленными полями.

Feature Class;Table
Поле для вычисления

Задает вычисление значений для нового или имеющегося поля.

  • Новое полеЗначения будут вычисляться для новых полей.
  • Существующее полеЗначения будут вычисляться для имеющихся полей.
String
Имя нового поля
(Дополнительный)

Новое поле, в котором будут вычисляться значения.

String
Существующее поле
(Дополнительный)

Существующее поле, в котором будут вычисляться значения.

Field
Тип поля
(Дополнительный)

Задает тип поля для вычисляемого поля.

  • StringЛюбая строка символов
  • IntegerЦелые числа
  • DoubleДробные числа
  • ДатаДата
String
Выражение

Вычисляет значения в поле. Выражения создаются в Arcade и могут включать операторы [+ - * / ] и несколько полей. Вычисленные значения применяются в единицах измерения пространственной привязки входных данных, но если используется географическая система координат – единицами измерения будут метры.

Если слой добавлен на карту, фильтры Поля и Помощник могут использоваться для построения выражения.

Calculator Expression
Возможность отслеживания
(Дополнительный)

Определяет, будет ли выражение использовать выражения с трекингом.

  • Отмечено – в выражении будет использоваться трекинг, и необходимо задать поле трекинга.
  • Не отмечено – в выражении не будет использоваться трекинг. Это значение по умолчанию

Boolean
Поля трека

Одно или несколько полей, используемых для идентификации уникальных треков.

Field
Установка временного шага
(Дополнительный)

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

Time Unit
Реперная точка временных шагов
(Дополнительный)

Базовое время, используемое для деления входных данных для анализа. Временные границы будут созданы для всего диапазона времени, а время начала отсчета не обязательно должно быть в самом начале. Если базовое время не задано, используется 1 января 1970.

Date

arcpy.geoanalytics.CalculateField(input_layer, output, field_to_calculate, {field_name}, {existing_field}, {field_type}, expression, {track_aware}, track_fields, {time_boundary_split}, {time_boundary_reference})
ИмяОписаниеТип данных
input_layer

Входные объекты, для которых требуется вычислить поле.

Table View
output

Новый набор данных с вычисленными полями.

Feature Class;Table
field_to_calculate

Задает вычисление значений для нового или имеющегося поля.

  • NEW_FIELDЗначения будут вычисляться для новых полей.
  • EXISTING_FIELDЗначения будут вычисляться для имеющихся полей.
String
field_name
(Дополнительный)

Новое поле, в котором будут вычисляться значения.

String
existing_field
(Дополнительный)

Существующее поле, в котором будут вычисляться значения.

Field
field_type
(Дополнительный)

Задает тип поля для вычисляемого поля.

  • STRINGНовое поле будет текстовым.
  • INTEGERНовое поле будет целочисленным.
  • FLOATНовое поле будет иметь тип с плавающей точкой.
  • DATEНовое поле будет иметь тип даты.
String
expression

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

Calculator Expression
track_aware
(Дополнительный)

Определяет, будет ли выражение использовать выражения с трекингом.

  • TRACK_AWAREВ выражении используется трекинг, необходимо задать поле трекинга.
  • NOT_TRACK_AWAREВ выражении не используется трекинг. Это значение по умолчанию
Boolean
track_fields
[track_fields,...]

Одно или несколько полей, используемых для идентификации уникальных треков.

Field
time_boundary_split
(Дополнительный)

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

Time Unit
time_boundary_reference
(Дополнительный)

Базовое время, используемое для деления входных данных для анализа. Временные границы будут созданы для всего диапазона времени, а время начала отсчета не обязательно должно быть в самом начале. Если базовое время не задано, используется 1 января 1970.

Date

Пример кода

Вычислить поле, пример (окно Python)

Пример скрипта в окне Python для использования функции CalculateField.

# Name: CalculateField.py
# Description: Calculate the mean of the 3 most recent speed measurements in hurricane tracks

# Import system modules
import arcpy

arcpy.env.workspace = "C:/data/Weather.gdb"

# Set local variables
inFeatures = "Hurricanes"
fieldName = "MeanSpeed3"
out = "HurricaneTracks_Mean"
calcExpression = "Date($feature.DateAsString)"

# Run Calculate Field
arcpy.gapro.CalculateField(inFeatures, out, "NEW_FIELD", fieldName, "", "Date", 
                           calcExpression)