Пакетное обновление полей (Управление данными)

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

Преобразует поля в таблице или классе объектов по схеме, заданной в таблице определений, и создает новую таблицу или класс объектов.

С помощью этого инструмента можно сделать следующее:

  • Добавить новые поля
  • Обновить существующие поля
  • Изменить порядок полей
  • Изменить типы полей
  • Изменить свойства полей
  • Присвоить или обновить псевдонимы полей
  • Вычислить значения полей по имеющимся полям, используя Python
  • Удалить поля

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

  • Входная таблица может быть классом объектов или таблицей. Инструмент создает новый класс объектов или таблицу с обновленной схемой.

  • Изменения схемы выходной таблицы задается параметром Выходная таблица определения схемы.

    Ниже приведен пример таблицы определений:

    Пример таблицы определений

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

    • Target field
    • Source field
    • Type
    • Decimals/Length
    • Alias
    • Script

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

    Например, в поле Script таблицы определений находится значение !TOTPOP!/!AREA!, что приводит к вычислению поля Population Density. Имена полей должны быть заключены в восклицательные знаки.

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

  • Используйте параметр Файл скрипта для вычисления нескольких строк Python. Чтобы использовать файл скрипта, создайте его с помощью функции Python и укажите функции в таблице определений.

    Ниже приведен пример кода скрипта для целевого поля Bev_Per_Capita:

    • Поле с именем Script в значении параметра Выходная таблица определения схемы со значением Bev_Per_Capita(!Bev_Total!, !TOTPOP!)
    • Значение параметра Файл скрипта со следующей функцией:
      
      def Bev_Per_Capita(Bev_Total, TOTPOP):
          return Bev_Total / TOTPOP

    Ниже приведен пример таблицы атрибутов до и после запуска инструмента.

    Пример работы инструмента Пакетное обновление полей

Параметры

ПодписьОписаниеТип данных
Входная таблица

Входная таблица или класс пространственных объектов.

Table View
Выходная таблица

Выходная таблица или класс объектов, содержащие обновленные поля.

Table
Выходная таблица определения схемы

Таблица, содержащая определения полей и вычисления, которые используются для создания выходных данных.

Table View
Файл скрипта
(Дополнительный)

Файл Python, в котором хранятся несколько строк функций Python для выполнения вычислений полей Выходной таблицы.

File
Имя выходного поля
(Дополнительный)

Имя поля таблицы определений, которое содержит имена целевых полей для выходной таблицы.

Field
Имя поля источника
(Дополнительный)

Имя поля таблицы определений, которое содержит имена полей-источников из входной таблицы.

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

Имя поля таблицы определений, которое задает типы данных для выходной таблицы.

Field
Число десятичных знаков или длина выходного поля
(Дополнительный)

Имя поля таблицы определений, которое задает число десятичных знаков или длину выходного поля.

Field
Псевдоним выходного поля
(Дополнительный)

Имя поля таблицы определений, которое задает имена псевдонимов для полей выходной таблицы.

Field
Скрипт выходного поля
(Дополнительный)

Имя поля таблицы определений, которое задает вычисления для выходных полей.

Field

arcpy.management.BatchUpdateFields(in_table, out_table, field_definition_table, {script_file}, {output_field_name}, {source_field_name}, {output_field_type}, {output_field_decimals_or_length}, {output_field_alias}, {output_field_script})
ИмяОписаниеТип данных
in_table

Входная таблица или класс пространственных объектов.

Table View
out_table

Выходная таблица или класс объектов, содержащие обновленные поля.

Table
field_definition_table

Таблица, содержащая определения полей и вычисления, которые используются для создания выходных данных.

Table View
script_file
(Дополнительный)

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

File
output_field_name
(Дополнительный)

Имя поля таблицы определений, которое содержит имена целевых полей для выходной таблицы.

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

Имя поля таблицы определений, которое содержит имена полей-источников из входной таблицы.

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

Имя поля таблицы определений, которое задает типы данных для выходной таблицы.

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

Имя поля таблицы определений, которое задает число десятичных знаков или длину выходного поля.

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

Имя поля таблицы определений, которое задает имена псевдонимов для полей выходной таблицы.

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

Имя поля таблицы определений, которое задает вычисления для выходных полей.

Field

Пример кода

BatchUpdateFields, пример (автономный скрипт)

В следующем скрипте окна Python показано, как использовать функцию BatchUpdateFields в автономном скрипте.

import arcpy
arcpy.management.BatchUpdateFields(
    "zip_codes", "MyProject.gdb\zip_codes_BatchUpdateFields",
    "DATA_TRANSFORMATION.csv", r"C:\BatchUpdate\script.py", "TARGET",
    "SOURCE", "DATATYPE", "DECIMALS", "ALIAS", "SCRIPT")

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы