Сводка
Преобразует категорийные значения (строка, целое число или дата) в несколько числовых полей, каждое из которых представляет определенную категорию. Закодированные числовые поля могут использоваться в большинстве научных данных и статистических рабочих процессов, включая регрессионные модели.
Иллюстрация
Использование
Инструмент поддерживает следующие методы кодирования:
- Один-горячий – Преобразует каждое категорийное значение в новый столбец и присваивает 0 или 1, где 1 обозначает наличие этого категорийного значения.
- Один-Холодный – Преобразует каждое категорийное значение в новый столбец и присваивает 0 или 1, где 0 обозначает наличие этого категорийного значения.
- Временной – Преобразует каждое значение даты в кодируемом поле в целочисленные значения (0, 1, 2 и т. д.) в зависимости от интервала временного шага. Все даты, попадающие в один и тот же интервал временного шага, кодируются вместе одним и тем же целым числом. При использовании метода Временной создается три поля: поле временного шага, содержащее закодированные временные шаги, поле времени начала, содержащее время начала временного интервала, и поле времени окончания, содержащее время окончания временного интервала.
Этот инструмент изменяет входные данные и добавляет новые закодированные поля во входную таблицу или класс объектов.
При выборе метода Один-горячий или Один-холодный для параметра Метод кодирования количество полей будет равно количеству категорийных значений в поле, которое вы выберете для кодирования (включая текст и целое число). При использовании метода кодирования Временной создаются интервалы временных шагов на основе значения параметра Интервал временного шага, и создаются три поля, содержащие временной шаг, время начала и время окончания.
Параметр Интервал временного шага применяется только в том случае, если для параметра Метод кодирования выбран Временной метод. Временное значение будет агрегировано во временной шаг, в пределах которого находится это время. Единицей измерения интервала временного шага могут быть секунды, минуты, часы, дни, недели, месяцы или годы.
Параметр Выравнивание временного шага определяет, как будет происходить агрегирование на основе данного интервала временного шага. Параметр Время окончания выравнивает (приводит) временной шаг к последнему по времени событию и агрегирует его назад во времени. Параметр Время начала выравнивает (приводит) временные шаги к первому по времени событию и агрегирует их вперед во времени. Параметр Опорное время позволяет указать конкретную дату и время, к которым будут выровнены (приведены) эти временные шаги.
Синтаксис
arcpy.management.EncodeField(in_table, field, {method}, {time_step_interval}, {time_step_alignment}, {reference_time})
Parameter | Объяснение | Тип данных |
in_table | Входная таблица или класс пространственных объектов, которые содержат кодируемое поле. Поля будут добавлены в существующую входную таблицу, новая выходная таблица не создаётся. | Table View; Raster Layer; Mosaic Layer |
field | Поле, содержащее кодируемые категорийные или временные значения. | Field |
method (Дополнительный) | Указывает метод, который будет использоваться для кодирования значений, содержащихся в параметре Кодируемое поле.
| String |
time_step_interval (Дополнительный) | Число секунд, минут, часов, дней, недель или лет, которое будет представлять один временной шаг. Временное значение будет агрегировано в определенный временной шаг, в пределах которого оно находится. Если значение не указано, то интервал временного шага по умолчанию определяется двумя алгоритмами, которые используются для определения оптимального числа и ширины интервалов данного временного шага. В качестве интервала временного шага используется меньший из двух результатов. | Time Unit |
time_step_alignment (Дополнительный) | Устанавливает, как будет происходить агрегирование на основе значения параметра Интервал временного шага.
| String |
reference_time (Дополнительный) | Дата и время, к которым будут выровнены (приведены) интервалы временного шага. Например, для еженедельного хранения данных с понедельника по воскресенье задайте базовое время на полночь воскресенья, чтобы разрыв временных шагов происходил в полночь с воскресенья на понедельник. Этим значением может быть дата и время или только дата; им не может быть только время. Используемый формат даты зависит от региональных настроек компьютера. | Date |
Производные выходные данные
Name | Объяснение | Тип данных |
updated_table | Таблица, содержащая добавленные поля, которые были закодированы. | Представление таблицы |
Пример кода
В следующем скрипте окна Python показано, как используется инструмент EncodeField.
arcpy.management.EncodeField("San_Francisco_Crimes",
"Category", "ONEHOT", '', None, "END_TIME")
Следующий автономный скрипт Python демонстрирует, как использовать инструмент EncodeField.
# Import system modules.
import arcpy
try:
# Set the workspace and input features.
arcpy.env.workspace = r"C:\\Encoded\\MyData.gdb"
inputFeatures = 'San_Francisco_Crimes'
# Set input features, dependent variable, and explanatory variable.
in_table = 'San_Francisco_Crimes'
field = 'Dates'
# Set encoding Method
encoding_method = "TEMPORAL"
# Set time Step Interval
time_step_interval = '1 Days'
# Set Time Step Alignment
time_step_alignment = "START_TIME"
# Run Encode Field Tool.
arcpy.management.EncodeField(in_table, field, encoding_method,
None, time_step_interval, time_step_alignment)
except arcpy.ExecuteError:
# If an error occurred when running the tool, print the error message.
print(arcpy.GetMessages())
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да