Transposer des champs (Outils de gestion des données)
Résumé
Transpose des données stockées dans des champs ou colonnes dans des lignes dans une nouvelle table ou classe d’entités.
Cet outil est utile lorsqu’une table ou classe d’entités stocke des valeurs dans des noms de champ (tels que Field1, Field2, Field3) que vous voulez faire pivoter afin de les organiser en lignes. Il vous permet de faire basculer les noms de champs et les valeurs de données correspondantes dans les champs vers des lignes.
Illustration
Transposer les valeurs des données stockées dans les colonnes d'une table ou d'une classe d'entités en lignes.
Utilisation
Par défaut, la sortie est une table. Si l’entrée est une classe d’entités et que la sortie doit être une classe d’entités, ajoutez le champ Shape au paramètre Attribute Fields (Champs attributaires).
Les champs Transposed Field (Champ transposé) et Value Field (Champ de valeur) en sortie sont de type texte.
Table ou classe d’entités en entrée contenant les champs de valeurs de données à transposer.
Table View
Champs à transposer
Champs de la table en entrée contenant les valeurs de données à transposer.
Selon vos exigences, vous pouvez sélectionner plusieurs champs à transposer. La valeur indiquée ici définit la nature du nom de champ dans la sortie. Lorsqu’aucune valeur n’est spécifiée, le nom du champ est utilisé. Par exemple, si les noms de champ à transposer sont Pop1991 et Pop1992, les valeurs de ces champs dans la sortie seront identiques (Pop1991 et Pop1992) par défaut. Toutefois, vous pouvez indiquer d’autres valeurs, telles que 1991 et 1992, à la place.
Colonnes de la table de valeurs :
Field—The fields or columns in the input table that will be transposed.
Value—The new field name that will be in the output. When no value is specified, the value is the same as the field name by default
Value Table
Table en sortie
Classe ou table d'entités en sortie. La sortie contiendra un champ transposé, un champ de valeur et le nombre de champs attributaires spécifiés qui doivent être hérités de la table en entrée.
Par défaut, la valeur est une table. La sortie est une classe d’entités lorsque la valeur du paramètre Input Table (Table en entrée) est une classe d’entités et que le champ Shape est spécifié dans le paramètre Attribute Fields (Champs attributaires).
Table
Champ transposé
Le nom du champ qui sera créé pour stocker les noms des champs transposés. N'importe quel nom de champ valide peut être utilisé.
String
Champ de valeur
Le nom du champ qui sera créé pour stocker les valeurs correspondantes des champs transposés. Nimporte quel nom de champ valide peut être utilisé, tant qu’il n’entre pas en conflit avec les noms de champ existants dans la table ou classe d’entités en entrée.
String
Champs attributaires
(Facultatif)
Champs attributaires supplémentaires de la table en entrée à inclure dans la table en sortie. Pour générer une classe d’entités, incluez le champ Shape.
Table ou classe d’entités en entrée contenant les champs de valeurs de données à transposer.
Table View
in_field[[field, {value}],...]
Champs de la table en entrée contenant les valeurs de données à transposer.
Selon vos exigences, vous pouvez sélectionner plusieurs champs à transposer. La valeur indiquée ici définit la nature du nom de champ dans la sortie. Lorsqu’aucune valeur n’est spécifiée, le nom du champ est utilisé. Par exemple, si les noms de champ à transposer sont Pop1991 et Pop1992, les valeurs de ces champs dans la sortie seront identiques (Pop1991 et Pop1992) par défaut. Toutefois, vous pouvez indiquer d’autres valeurs, telles que 1991 et 1992, à la place.
Colonnes de la table de valeurs :
Field—The fields or columns in the input table that will be transposed.
Value—The new field name that will be in the output. When no value is specified, the value is the same as the field name by default
Value Table
out_table
Classe ou table d'entités en sortie. La sortie contiendra un champ transposé, un champ de valeur et le nombre de champs attributaires spécifiés qui doivent être hérités de la table en entrée.
Par défaut, la valeur est une table. La sortie est une classe d’entités lorsque la valeur du paramètre in_table est une classe d’entités et que le champ Shape est spécifié dans le paramètre attribute_fields.
Table
in_transposed_field_name
Le nom du champ qui sera créé pour stocker les noms des champs transposés. N'importe quel nom de champ valide peut être utilisé.
String
in_value_field_name
Le nom du champ qui sera créé pour stocker les valeurs correspondantes des champs transposés. Nimporte quel nom de champ valide peut être utilisé, tant qu’il n’entre pas en conflit avec les noms de champ existants dans la table ou classe d’entités en entrée.
String
attribute_fields[attribute_fields,...]
(Facultatif)
Champs attributaires supplémentaires de la table en entrée à inclure dans la table en sortie. Pour générer une classe d’entités, incluez le champ Shape.
Field
Exemple de code
Exemple 1 d’utilisation de la fonction TransposeFields (fenêtre Python)
Le script de fenêtre Python ci-après illustre l’utilisation de la fonction TransposeFields en mode immédiat.
Exemple 2 d’utilisation de la fonction TransposeFields (script autonome)
Le script autonome ci-après illustre l’utilisation de la fonction TransposeFields.
# Name: TransposeFields_Ex_02.py
# Description: Transpose field names from column headers to values in one column
# Requirements: None
# Import system modules
import arcpy
# 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"
# Run TransposeTimeFields
arcpy.management.TransposeFields(inTable, fieldsToTranspose, outTable, transposedFieldName, valueFieldName, attrFields)