Feld verbinden (Data Management)

Zusammenfassung

Stellt dauerhaft Verbindungen des Inhalts einer Tabelle auf der Grundlage eines gemeinsamen Attributfeldes mit einer anderen Tabelle her. Die Eingabetabelle wird so aktualisiert, dass sie die Felder aus der Join-Tabelle enthält. Sie können auswählen, welche Felder aus der Join-Tabelle der Eingabetabelle hinzugefügt werden.

Die Datensätze im Parameter Eingabetabelle werden den Datensätzen im Parameter Join-Tabelle zugeordnet. Die Zuordnung basiert auf den Parametern Eingabe-Join-Feld und Join-Tabellen-Feld. Bei Bedarf können Sie im Parameter Join-Tabelle bestimmte Felder auswählen, die bei der Verbindung an den Parameter Eingabetabelle angehängt werden.

Verwendung

  • Bei dem Wert für Eingabetabelle kann es sich um eine Feature-Class (einschließlich eines Shapefile) oder eine Tabelle handeln.

  • Alle Felder im Parameter Eingabetabelle werden bei der Verbindung beibehalten. Optional können Sie im Parameter Join-Tabelle bestimmte Felder auswählen, die der Ausgabe hinzugefügt werden sollen. Diese fügen Sie über den Parameter Felder übertragen hinzu.

  • Datensätze aus dem Parameter Join-Tabelle können mehr als einem Datensatz im Parameter Eingabetabelle zugeordnet werden.

  • Falls für den optionalen Parameter Felder übertragen keine Felder ausgewählt werden, werden standardmäßig alle Felder der Join-Tabelle mit der Ausgabe verbunden.

  • Verbindungen können auf Feldern vom Typ "Text", "Datum" oder "Zahl" basieren.

  • Bei Verbindungen auf Basis von Textfeldern wird zwischen Groß- und Kleinschreibung unterschieden.

  • Felder mit verschiedenen Zahlenformaten können verbunden werden, wenn die Werte gleich sind. Sie können z. B. ein Feld vom Typ "Float" mit einem Feld vom Typ "Short Integer" verbinden.

  • Die Werte für Eingabe-Join-Feld und Join-Tabellen-Feld können unterschiedliche Feldnamen haben.

  • Falls ein Join-Feld denselben Namen wie ein Feld der Eingabetabelle trägt, wird an das verbundene Feld _1 (oder _2 bzw. _3 usw.) angehängt, um es eindeutig zu benennen.

  • Wenn die Werte im Parameter Join-Tabellen-Feld nicht eindeutig sind, wird nur das erste Vorkommen der jeweiligen Werte verwendet.

    • Wenn andere Join-Tabellenwerte als das erste Vorkommen berücksichtigt werden sollen, führen Sie zunächst das Werkzeug Summenstatistik aus, und verwenden Sie den Wert für Join-Tabelle als Eingabe. Mit Summenstatistik können Sie Felder (z. B., Summe, Mittelwert, Minimum) zusammenfassen.
    • Um zwei oder mehr Felder in der Join-Tabelle vor dem Verbinden zusammenzuführen, exportieren Sie zunächst die Tabelle oder Feature-Class mit dem Werkzeug Tabelle in Tabelle. Führen Sie sie dann mit der Feldzuordnung des Werkzeugs zusammen.
  • Verwenden Sie den Parameter Feldzuordnung, um die Felder im Ausgabe-Dataset und deren Inhalt zu verwalten.

    • Um die Feldreihenfolge zu ändern, wählen Sie den Namen eines Feldes aus, und ziehen Sie es an die neue Position.
    • Als Datentyp der Ausgabefelder wird der Datentyp des zuerst gefundenen Eingabefeldes (dieses Namens) übernommen. Sie können den Datentyp jederzeit manuell in einen anderen gültigen Datentyp ändern.
    • Die verfügbaren Vereinigungsregeln lauten: Erste(r), Letzte(r), Verbinden, Summe, Mittelwert, Medianwert, Modus, Minimum, Maximum, Standardabweichung und Anzahl.
    • Bei der Anwendung der Vereinigungsregel Verbinden können Sie Ihr ein Trennzeichen angeben, wie z. B. Leerzeichen, Komma, Punkt, Bindestrich. Um ein Leerzeichen zu verwenden, muss sich der Mauszeiger am Anfang des Eingabefeldes befinden. Drücken Sie dann einmal die Leertaste.
    • Sie können Start- und Endpositionen von Textfeldern mithilfe der Formatoption festlegen.
    • Führen Sie die Standardabweichung nicht für eine einzelne Eingabe aus, da die Werte nicht durch 0 geteilt werden können. Die Standardabweichung ist daher keine gültige Option für Einzeleingaben.

    Weitere Informationen zur Feldzuordnung in Skripten

  • Mit dem Werkzeug Verbindung überprüfen kann eine Verbindung zwischen zwei Layern oder Tabellen überprüft werden, um zu bestimmen, ob die Layer oder Tabellen gültige Feldnamen und Objekt-ID-Felder enthalten, ob die Verbindung übereinstimmende Datensätze generiert, ob die Verbindung eine Eins-zu-Eins- oder Eins-zu-Viele-Verbindung ist, und um weitere Eigenschaften der Verbindung zu bestimmen.

    Aus Gründen der Benutzerfreundlichkeit ist im Dialogfeld des Werkzeugs eine Schaltfläche zum Überprüfen der Verbindung verfügbar.

Parameter

BeschriftungErläuterungDatentyp
Eingabetabelle

Die Tabelle oder die Feature-Class, mit der die Join-Tabelle verbunden wird.

Mosaic Layer; Raster Layer; Table View
Eingabe-Join-Feld

Das Feld in der Eingabetabelle, auf dem die Verbindung basieren soll.

Field
Join-Tabelle

Die Tabelle, die mit der Eingabetabelle verbunden werden soll.

Mosaic Layer; Raster Layer; Table View
Join-Tabellen-Feld

Das Feld in der Join-Tabelle, das die Werte enthält, auf denen die Verbindung basiert.

Field
Felder übertragen
(optional)

Die Felder aus der Join-Tabelle, die in die Eingabetabelle übertragen werden sollen, basierend auf einer Verbindung zwischen der Eingabetabelle und der Join-Tabelle.

Field
Übertragungsmethode
(optional)

Gibt an, wie Join-Felder und Feldtypen in die Ausgabe übertragen werden.

  • Übertragungsfelder auswählenFelder und Feldtypen aus der verbundenen Tabelle werden in die Ausgabe übertragen. Dies ist die Standardeinstellung.
  • Feldzuordnung verwendenDie Übertragung von Feldern und Feldtypen aus der verbundenen Tabelle in die Ausgabe wird mit dem Parameter Feldzuordnung gesteuert.
String
Feldzuordnung
(optional)

Die Attributfelder, die in die Ausgabe geschrieben werden, sowie zugehörige Feldeigenschaften und Quellfelder. Standardmäßig werden alle Felder der Eingaben aufgenommen.

Felder können hinzugefügt, gelöscht, umbenannt und neu angeordnet werden. Zudem können Sie deren Eigenschaften ändern.

Mit Vereinigungsregeln geben Sie an, wie Werte aus zwei oder mehr Eingabefeldern zu einem einzigen Ausgabewert zusammengeführt bzw. kombiniert werden. Es gibt mehrere Vereinigungsregeln, mit denen Sie bestimmen können, wie das Ausgabefeld mit Werten gefüllt wird.

  • Erste(r): Der erste Wert des Eingabefeldes wird verwendet.
  • Letzte(r): Der letzte Wert des Eingabefeldes wird verwendet.
  • Verbinden: Führt die Werte des Eingabefeldes zusammen (verbindet sie).
  • Summe: Berechnet den Gesamtbetrag der Werte des Eingabefeldes.
  • Mittelwert: Berechnet den Mittelwert (Durchschnitt) der Werte des Eingabefeldes.
  • Medianwert: Berechnet den Medianwert (Mittelwert) der Werte des Eingabefeldes.
  • Modus: Verwendet den Wert mit der größten Häufigkeit.
  • Min: Verwendet den Minimalwert aller Werte des Eingabefeldes.
  • Max: Verwendet den Maximalwert aller Werte des Eingabefeldes.
  • Standardabweichung: Wendet die Klassifizierungsmethode "Standardabweichung" auf alle Werte des Eingabefeldes an.
  • Anzahl: Gibt die Anzahl der Datensätze zurück, die in der Berechnung enthalten sind.

Field Mappings

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Eingabetabelle

Das aktualisierte Eingabe-Dataset.

Table View; Raster Layer; Mosaic Layer

arcpy.management.JoinField(in_data, in_field, join_table, join_field, {fields}, {fm_option}, {field_mapping})
NameErläuterungDatentyp
in_data

Die Tabelle oder die Feature-Class, mit der die Join-Tabelle verbunden wird.

Mosaic Layer; Raster Layer; Table View
in_field

Das Feld in der Eingabetabelle, auf dem die Verbindung basieren soll.

Field
join_table

Die Tabelle, die mit der Eingabetabelle verbunden werden soll.

Mosaic Layer; Raster Layer; Table View
join_field

Das Feld in der Join-Tabelle, das die Werte enthält, auf denen die Verbindung basiert.

Field
fields
[fields,...]
(optional)

Die Felder aus der Join-Tabelle, die in die Eingabetabelle übertragen werden sollen, basierend auf einer Verbindung zwischen der Eingabetabelle und der Join-Tabelle.

Field
fm_option
(optional)

Gibt an, wie Join-Felder und Feldtypen in die Ausgabe übertragen werden.

  • NOT_USE_FMFelder und Feldtypen aus der verbundenen Tabelle werden in die Ausgabe übertragen. Dies ist die Standardeinstellung.
  • USE_FMDie Übertragung von Feldern und Feldtypen aus der verbundenen Tabelle in die Ausgabe wird mit dem Parameter field_mapping gesteuert.
String
field_mapping
(optional)

Die Attributfelder, die in die Ausgabe geschrieben werden, sowie zugehörige Feldeigenschaften und Quellfelder. Standardmäßig werden alle Felder der Eingaben aufgenommen.

Felder können hinzugefügt, gelöscht, umbenannt und neu angeordnet werden. Zudem können Sie deren Eigenschaften ändern.

Mit Vereinigungsregeln geben Sie an, wie Werte aus zwei oder mehr Eingabefeldern zu einem einzigen Ausgabewert zusammengeführt bzw. kombiniert werden. Es gibt mehrere Vereinigungsregeln, mit denen Sie bestimmen können, wie das Ausgabefeld mit Werten gefüllt wird.

  • Erste(r): Der erste Wert des Eingabefeldes wird verwendet.
  • Letzte(r): Der letzte Wert des Eingabefeldes wird verwendet.
  • Verbinden: Führt die Werte des Eingabefeldes zusammen (verbindet sie).
  • Summe: Berechnet den Gesamtbetrag der Werte des Eingabefeldes.
  • Mittelwert: Berechnet den Mittelwert (Durchschnitt) der Werte des Eingabefeldes.
  • Medianwert: Berechnet den Medianwert (Mittelwert) der Werte des Eingabefeldes.
  • Modus: Verwendet den Wert mit der größten Häufigkeit.
  • Min: Verwendet den Minimalwert aller Werte des Eingabefeldes.
  • Max: Verwendet den Maximalwert aller Werte des Eingabefeldes.
  • Standardabweichung: Wendet die Klassifizierungsmethode "Standardabweichung" auf alle Werte des Eingabefeldes an.
  • Anzahl: Gibt die Anzahl der Datensätze zurück, die in der Berechnung enthalten sind.

In Python kann dieser Parameter mit der Klasse FieldMappings definiert werden.

Field Mappings

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_layer_or_view

Das aktualisierte Eingabe-Dataset.

Table View; Raster Layer; Mosaic Layer

Codebeispiel

JoinField – Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion JoinField im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.management.JoinField("zion_park", "zonecode", "zion_zoning", "zonecode", 
                           ["land_use", "land_cover"])
JoinField – Beispiel 2 (eigenständiges Skript)

In diesem eigenständigen Python-Skript wird veranschaulicht, wie die JoinField-Funktion zum Verbinden einer Tabelle mit einer Feature-Class verwendet wird, wobei nur zwei der Tabellenfelder in der Verbindung berücksichtigt werden.

# PermanentJoin.py
# Purpose: Join two fields from a table to a feature class 

# Import system modules
import arcpy

# Set the current workspace 
arcpy.env.workspace = "c:/data/data.gdb"

# Set the local parameters
inFeatures = "zion_park"
joinField = "zonecode"
joinTable = "zion_zoning"
fieldList = ["land_use", "land_cover"]

# Join two feature classes by the zonecode field and only carry 
# over the land use and land cover fields
arcpy.management.JoinField(inFeatures, joinField, joinTable, joinField, 
                           fieldList)

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen