Подпись | Описание | Тип данных |
Входная таблица | Класс пространственных объектов или таблица, содержащая значения полей для транспонирования. | Table View |
Поля для транспонирования | Поля или столбцы, содержащие значения данных в входной таблице, которые нужно транспонировать. В зависимости от ваших потребностей, можно выбрать несколько полей для транспонирования. Значение определяет, какое имя поля будет выходным. Если ничего не указано, значение будет такое же, как имя поля (по умолчанию). Но вы можете задать собственное значение. Например, если имена полей, которые вы хотите транспонировать – Pop1991, Pop1992 и т.д., по умолчанию выходные значения для этих полей будут такими же (Pop1991, Pop1992 и т.д.). Однако, вы можете задать свои собственные значения, например, 1991 и 1992. | Value Table |
Выходная таблица | Выходной класс объектов или таблица. Выходной набор данных будет содержать транспонированное поле, поле значения, а также любое заданное количество полей атрибутов, которые должны быть перенесены из входной таблицы. По умолчанию в качестве выходных данных вы получаете Выходную таблицу. Выходными данными может быть и класс объектов, если в качестве Входной таблицы указан класс объектов и поле Shape выбрано для параметра Поля атрибутов. | Table |
Перегруппированное поле | Имя поля, которое будет создано для хранения имен полей, выбираемых для транспонирования. Может использоваться любое корректное имя поля. | String |
Поле значений | Имя поля, которое будет создано для хранения соответствующих значений транспонируемых полей. Вы можете ввести любое имя для создаваемого поля времени, не противоречащие общим правилам названия полей и не конфликтующее с уже имеющимися полями входной таблицы или класса пространственных объектов. | String |
Атрибутивные поля (Дополнительный) | Дополнительные атрибутивные поля входной таблицы, которые можно включить в выходные данные. Если требуется вывести класс объектов, выберите поле Shape. | Field |
Краткая информация
Трансформирует данные в полях или столбцах в строки в новой таблице или классе объектов.
Полезно использовать этот инструмент, если таблица или класс пространственных объектов хранят значения в именах полей (например, Field1, Field2Field2, Field3Field3), и вы хотите повернуть таблицу таким образом, чтобы они отображались в строках. Это позволит вам поменять местами имена полей и соответствующие значения данных (из полей в строки).
Иллюстрация
Использование
По умолчанию выходными данными является таблица. Если входными данными является класс объектов, и вы хотите получить класс объектов в качестве выходных данных, вы должны добавить поле Shape в параметр Поля атрибутов.
Внимание:
Этот инструмент изменяет входные значения. Более подробно о стратегиях предотвращения нежелательных изменений данных см. в разделе Инструменты, которые изменяют или обновляют входные данные.
Параметры
arcpy.management.TransposeFields(in_table, in_field, out_table, in_transposed_field_name, in_value_field_name, {attribute_fields})
Имя | Описание | Тип данных |
in_table | Класс пространственных объектов или таблица, содержащая значения полей для транспонирования. | Table View |
in_field [[field, {value}],...] | Поля или столбцы, содержащие значения данных в входной таблице, которые нужно транспонировать. В зависимости от ваших потребностей, можно выбрать несколько полей для транспонирования. Значение определяет, какое имя поля будет выходным. Если ничего не указано, значение будет такое же, как имя поля (по умолчанию). Но вы можете задать собственное значение. Например, если имена полей, которые вы хотите транспонировать – Pop1991, Pop1992 и т.д., по умолчанию выходные значения для этих полей будут такими же (Pop1991, Pop1992 и т.д.). Однако, вы можете задать свои собственные значения, например, 1991 и 1992. | Value Table |
out_table | Выходной класс объектов или таблица. Выходной набор данных будет содержать транспонированное поле, поле значения, а также любое заданное количество полей атрибутов, которые должны быть перенесены из входной таблицы. По умолчанию out_table - это таблица. Выходными данными может быть и класс объектов, если в качестве in_table указан класс объектов и поле Shape выбрано для параметра attribute_fields. | Table |
in_transposed_field_name | Имя поля, которое будет создано для хранения имен полей, выбираемых для транспонирования. Может использоваться любое корректное имя поля. | String |
in_value_field_name | Имя поля, которое будет создано для хранения соответствующих значений транспонируемых полей. Вы можете ввести любое имя для создаваемого поля времени, не противоречащие общим правилам названия полей и не конфликтующее с уже имеющимися полями входной таблицы или класса пространственных объектов. | String |
attribute_fields [attribute_fields,...] (Дополнительный) | Дополнительные атрибутивные поля входной таблицы, которые можно включить в выходные данные. Если требуется вывести класс объектов, выберите поле Shape. | Field |
Пример кода
Следующий скрипт окна Python показывает, как использовать инструмент TransposeFields в режиме прямого запуска.
import arcpy
arcpy.TransposeFields_management("C:/Data/TemporalData.gdb/Input","Field1 newField1;Field2 newField2;Field3 newField3",
"C:/Data/TemporalData.gdb/Output_Time","Transposed_Field", "Value","Shape;Type")
В следующем автономном скрипте показано, как использовать инструмент TransposeFields.
# Name: TransposeFields_Ex_02.py
# Description: Tranpose field names from column headers to values in one column
# Requirements: None
# Import system modules
import arcpy
from arcpy import env
# set workspace
arcpy.env.workspace = "C:/Data/TemporalData.gdb"
# Set local variables
inTable = "Input"
# Specify fields to transpose
fieldsToTranspose = "Field1 newField1;Field2 newField2;Field3 newField3"
# Set a variable to store output feature class or table
outTable = "Output_Time"
# Set a variable to store time field name
transposedFieldName = "Transposed_Field"
# Set a variable to store value field name
valueFieldName = "Value"
# Specify attribute fields to be included in the output
attrFields = "Shape;Type"
# Execute TransposeTimeFields
arcpy.TransposeFields_management(inTable, fieldsToTranspose, outTable, transposedFieldName, valueFieldName, attrFields)