Resumen
Permite cambiar los datos almacenados en campos o columnas a filas de una tabla o clase de entidad nueva.
Esta herramienta resulta útil cuando la tabla o clase de entidad almacena valores en nombres de campos (como Field1, Field2, Field3) que desea rotar para disponerlos en filas. Le permite cambiar los nombres de campos y los valores de datos correspondientes en los campos a filas.
Ilustración
Uso
De forma predeterminada, la salida es una tabla. Si la entrada es una clase de entidad y desea que la salida también sea una clase de entidad, agregue el campo Shape a Campos de atributos.
Sintaxis
arcpy.management.TransposeFields(in_table, in_field, out_table, in_transposed_field_name, in_value_field_name, {attribute_fields})
Parámetro | Explicación | Tipo de datos |
in_table | Tabla o clase de entidad de entrada que contiene los campos de valores de datos que se desea transponer. | Table View |
in_field [[field, {value}],...] | Campos o columnas que contienen los valores de datos en la tabla de entrada que necesitan ser transpuestos. Dependiendo de sus necesidades, puede seleccionar varios campos que necesiten ser transpuestos. Aquí el valor define cuál será el nombre del campo en la salida. Si no se especifica, el valor será igual que el nombre de campo de forma predeterminada. Sin embargo, también puede especificar su propio valor. Por ejemplo, si los nombres de campo que se van a transponer son Pop1991, Pop1992, etc.; de forma predeterminada, los valores para estos campos en la salida serán los mismos (Pop1991, Pop1992, etc.). Sin embargo, puede especificar sus propios valores como, por ejemplo, 1991 y 1992. | Value Table |
out_table | La tabla o clase de entidad de salida. La salida contendrá un campo transpuesto, un campo de valor y cualquier cantidad de campos de atributos especificados que deben heredarse de la tabla de entrada. De forma predeterminada, la out_table es una tabla. La salida será una clase de entidad si la in_table es una clase de entidad y si se ha seleccionado el campo Shape en el parámetro attribute_fields. | Table |
in_transposed_field_name | Nombre del campo que se creará para almacenar los nombres de los campos transpuestos. Se puede utilizar cualquier nombre de campo válido. | String |
in_value_field_name | Nombre del campo que se creará para almacenar los valores correspondientes de los campos transpuestos. Se puede configurar cualquier nombre de campo válido, siempre y cuando no ocasione conflictos con los nombres de campo existentes de la tabla o clase de entidad de entrada. | String |
attribute_fields [attribute_fields,...] (Opcional) | Campos de atributos adicionales de la tabla de entrada que se incluirán en la tabla de salida. Si desea generar una clase de entidad, agregue el campo Shape. | Field |
Muestra de código
El script de la ventana de Python muestra cómo utilizar la herramienta TransposeFields en el modo inmediato.
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")
El siguiente script independiente muestra cómo utilizar la herramienta 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)
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí