Attribute übertragen (Editing)

Zusammenfassung

Ermittelt, wo die Quell-Linien-Features räumlich mit den Ziel-Linien-Features übereinstimmen, und überträgt angegebene Attribute von Quell-Features auf abgeglichene Ziel-Features.

Die Attributübertragung wird normalerweise verwendet, um Attribute von Features in einem Dataset zu entsprechenden Features in einem anderen Dataset zu kopieren. Beispielsweise können damit die Namen von Straßen-Features aus einem digitalisierten, verwalteten Dataset auf neu erfasste, genauere Features in einem neuen Dataset übertragen werden. Die zwei Datasets werden gewöhnlich als Quell-Features und Ziel-Features bezeichnet. Dieses Werkzeug ermittelt einander entsprechende Quell- und Ziellinien-Features innerhalb der angegebenen Suchentfernung und überträgt die angegebenen Attribute von Quelllinien auf Ziellinien.

Abbildung

Abbildung zum Werkzeug "Attribute übertragen"

Verwendung

    Vorsicht:

    Mit diesem Werkzeug werden die Eingabedaten geändert. Weitere Informationen und Strategien zur Vermeidung unerwünschter Datenänderungen finden Sie unter Werkzeuge, die Eingabedaten ändern oder aktualisieren.

    Hinweis:

    Alle Eingaben müssen sich im selben Koordinatensystem befinden.

  • Die Vereinigung der Eingabe-Ausdehnungen wird als Verarbeitungsausdehnung verwendet. Die Anzahl der beteiligten Quellen- und Ziel-Features wird in den Verarbeitungsmeldungen aufgeführt.

  • Im Parameter Feld(er) übertragen müssen ein oder mehrere Felder angegeben werden. Wenn ein Übertragungsfeld denselben Namen wie ein Feld der Ziel-Feature-Tabelle trägt, wird _1 (oder _2 bzw. _3 usw.) an das Übertragungsfeld angehängt, um es eindeutig zu benennen.

    Wenn mehrere Quell-Features mit einem oder mehreren Ziel-Features übereinstimmen, werden nur die Feldwerte aus einem der Quell-Features auf die Ziel-Features übertragen. Wenn ein Quellenfeldwert fehlt, findet keine Attributübertragung statt.

  • Der Parameter Suchentfernung wird zum Suchen von Übereinstimmungskandidaten verwendet. Verwenden Sie eine Entfernung, die lang genug ist, um die meisten Verschiebungen zwischen übereinstimmenden Features zu erfassen, jedoch nicht so lang, dass dadurch zu viele Kandidaten unnötig verarbeitet und potenziell falsche Treffer erzielt werden.

  • Der Parameter Ausgabe-Zuordnungstabelle ist optional. Die Zuordnungstabelle enthält vollständige Informationen zum Feature-Abgleich, z. B. die Quellen- und Ziel-FIDs, Übereinstimmungsgruppen, Übereinstimmungsbeziehungen und das Konfidenzniveau des Abgleichs aus Bedingungen für den räumlichen und Attributabgleich. Diese Informationen können die Interpretation der Übereinstimmungssituationen ermöglichen und die Nachprüfung, Nachbearbeitung und weitere Analyse vereinfachen. Weitere Informationen finden Sie unter Feature-Abgleich und Zuordnungstabelle.

  • Mit dem Parameter Übertragungsregelfeld(er) werden Regeln zur Steuerung der Attributübertragung bei m:n-Zuordnungen festgelegt, wobei mehrere Quell-Features einem oder mehreren Ziel-Features zugeordnet werden. Wenn keine Regeln festgelegt sind, werden die Attribute aus dem längsten der zugeordneten Quell-Features übertragen. Um eine bessere Übertragung zu erhalten, können attributbasierte Regeln verwendet werden, die jeweils durch einen Feldnamen und einen Wert definiert werden.

    Die folgenden Feldtypen und Regelwerte werden unterstützt:

    FeldtypRegelwerte

    Text

    Ein eventuell in den Quell-Features vorhandener Zeichenfolgenwert.

    Integer

    Entweder ein in den Quell-Features vorhandener Ganzzahlwert oder MAX bzw. MIN für den Maximal- oder Minimalwert.

    Datum

    MAX oder MIN für das am kürzesten oder weitesten zurückliegende Datum.

    Sie können beliebig viele Wertepaare aus Feldern und Regeln angeben. Die Regeln werden in der angegebenen Reihenfolge angewendet.

    Wenn eine m:n-Zuordnung gefunden wurde, überprüft das Werkzeug die für Felder und Regeln angegebenen Werte daraufhin, aus welchem Attribute wie folgt übertragen werden sollen:

    • Wenn nur eines der m-Quell-Features den Regelwert im ersten Feld der Regelliste aufweist, wird dieses Quell-Feature für die Übertragung verwendet.
    • Enthält mehr als ein oder gar keines der m-Quell-Features den Regelwert, so besteht ein Unentschieden. Wenn keine weiteren Regeln angegeben sind, wird die längste unter ihnen für die Übertragung verwendet. Ansonsten wird die in der Liste nachfolgende Regel daraufhin überprüft, ob sie das Unentschieden aufhebt.
    • Der Vorgang setzt sich so lange fort, bis alle Regeln bewertet wurden. Wenn kein Quell-Feature für die Übertragung ermittelt werden kann, dann wird das längste Quell-Feature verwendet.

    Im folgenden Beispiel wird erklärt, wie dieser Vorgang abläuft. Bei einer 3:1-Zuordnung muss das Feld ROAD_NAME von der Quelle auf das Ziel übertragen werden. Standardmäßig wird das Quell-Feature 3, das längste der drei Quell-Features, für die Übertragung verwendet. Das Ziel-Feature erhält dann für ROAD_NAME den Wert "West Ave", wie unten in Tabelle (a) zu sehen ist.

    Als Beispiel wurden die folgenden Regeln festgelegt: das Feld TRAVEL_DIRECTION mit der Regel One way und das Feld SPEED_LIMIT mit der Regel MAX. Um das richtige Quell-Feature für die Übertragung zu bestimmen, bewertet das Werkzeug für alle drei Quell-Features zuerst die Werte im Feld TRAVEL_DIRECTION. Es wird ermittelt, dass zwei Features die Regel One way erfüllen. Danach überprüft das Werkzeug die SPEED_LIMIT-Werte für diese beiden Features. Es verwendet das OBJECTID-Feld 1, dessen Maximalwert 40 lautet. Somit wird aus diesem Feature der ROAD_NAME-Feldwert East Ave in das Ziel-Feature übertragen, wie der nachstehenden Tabelle (b) zu entnehmen ist.

    Beispiel für Übertragungsregelfelder

  • Die Genauigkeit des Feature-Abgleichs ist abhängig von der Qualität, Komplexität und Ähnlichkeit der Daten der zwei Eingaben.

    Während der Vorverarbeitung müssen Sie die Datenfehler minimieren und relevante Features als Eingabe auswählen. Im Allgemeinen ist es hilfreich, wenn die Features in einem Eingabe-Dataset topologisch richtig sind, eine gültige Geometrie aufweisen und Singlepart und nicht doppelt sind. Andernfalls können unerwartete Fehler auftreten.

Parameter

BeschriftungErläuterungDatentyp
Quell-Features

Die Linien-Features, aus denen Attribute übertragen werden.

Feature Layer
Ziel-Features

Die Linien-Features, in die Attribute übertragen werden. Die Übertragungsfelder werden den Ziel-Features hinzugefügt.

Feature Layer
Feld(er) übertragen

Ein Liste mit Quellenfeldern, die in Ziel-Features übertragen werden. Es muss mindestens ein Feld angegeben werden.

Field
Suchentfernung

Die Entfernung, die für die Suche nach Übereinstimmungskandidaten verwendet werden soll. Die Entfernung muss angegeben und größer als null sein. Sie können eine bevorzugte Einheit auswählen. Die Standardeinstellung ist die Einheit des Features.

Linear Unit
Felder für Abgleich
(optional)

Liste der Felder aus Quellen- und Ziel-Features. Falls angegeben, wird jedes Feldpaar auf Übereinstimmungskandidaten geprüft, um die Ermittlung des richtigen Treffers zu ermöglichen.

Value Table
Ausgabe-Zuordnungstabelle
(optional)

Die Ausgabetabelle mit vollständigen Informationen zum Feature-Abgleich.

Table
Übertragungsregelfeld(er)
(optional)

Die Regeln, mit denen gesteuert wird, welches Quell-Feature bei der Zuordnung mehrerer Quell-Features zu Ziel-Features für die Übertragung von Attributen verwendet wird. Das für die Übertragung verwendete Quell-Feature ergibt sich aus den angegebenen Regelfeldern und den Regelwerten, denen in der angegebenen Liste Prioritäten von hoch bis niedrig zugeordnet sind. Wenn keine Regeln festgelegt sind, wird das längste der mehrfach zugeordneten Quell-Features für die Übertragung verwendet.

Die folgenden Regeltypen sind verfügbar:

  • MIN: Der Mindestwert für ein Ganzzahl- oder Datumsfeld. Bei einem Datumsfeld wird das jüngste Datum verwendet.
  • MAX: Der Maximalwert für ein Ganzzahl- oder Datumsfeld. Bei einem Datumsfeld wird das älteste Datum verwendet.
  • Ein eventuell in den Quell-Features vorhandener Text- oder Ganzzahlwert.
Value Table

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Ziel-Features

Die aktualisierten Ziel-Features.

Feature Class

arcpy.management.TransferAttributes(source_features, target_features, transfer_fields, search_distance, {match_fields}, {out_match_table}, {transfer_rule_fields})
NameErläuterungDatentyp
source_features

Die Linien-Features, aus denen Attribute übertragen werden.

Feature Layer
target_features

Die Linien-Features, in die Attribute übertragen werden. Die Übertragungsfelder werden den Ziel-Features hinzugefügt.

Feature Layer
transfer_fields
[field,...]

Ein Liste mit Quellenfeldern, die in Ziel-Features übertragen werden. Es muss mindestens ein Feld angegeben werden.

Field
search_distance

Die Entfernung, die für die Suche nach Übereinstimmungskandidaten verwendet werden soll. Die Entfernung muss angegeben und größer als null sein. Sie können eine bevorzugte Einheit auswählen. Die Standardeinstellung ist die Einheit des Features.

Linear Unit
match_fields
[[source_field, target_field],...]
(optional)

Liste der Felder aus Quellen- und Ziel-Features. Falls angegeben, wird jedes Feldpaar auf Übereinstimmungskandidaten geprüft, um die Ermittlung des richtigen Treffers zu ermöglichen.

Value Table
out_match_table
(optional)

Die Ausgabetabelle mit vollständigen Informationen zum Feature-Abgleich.

Table
transfer_rule_fields
[[field, rule],...]
(optional)

Die Regeln, mit denen gesteuert wird, welches Quell-Feature bei der Zuordnung mehrerer Quell-Features zu Ziel-Features für die Übertragung von Attributen verwendet wird. Das für die Übertragung verwendete Quell-Feature ergibt sich aus den angegebenen Regelfeldern und den Regelwerten, denen in der angegebenen Liste Prioritäten von hoch bis niedrig zugeordnet sind. Wenn keine Regeln festgelegt sind, wird das längste der mehrfach zugeordneten Quell-Features für die Übertragung verwendet.

Die folgenden Regeltypen sind verfügbar:

  • MIN: Der Mindestwert für ein Ganzzahl- oder Datumsfeld. Bei einem Datumsfeld wird das jüngste Datum verwendet.
  • MAX: Der Maximalwert für ein Ganzzahl- oder Datumsfeld. Bei einem Datumsfeld wird das älteste Datum verwendet.
  • Ein eventuell in den Quell-Features vorhandener Text- oder Ganzzahlwert.
Value Table

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_feature_class

Die aktualisierten Ziel-Features.

Feature Class

Codebeispiel

TransferAttributes: Beispiel 1 (Python-Fenster)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.edit.TransferAttributes("source_Roads.shp", "target_Roads.shp", 
                              [["RoadName", "PaveType"]], "25 Feet")
TransferAttributes: Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Skript ist ein Beispiel für die Anwendung der Funktion TransferAttributes in einer Skriptumgebung.

"""
Name:        TransferAttributes_example_script2.py
Description: Perform attribute transfer from newly updated roads (source) to existing
             base roads (target). When the source and target features are matched in
             many-to-one or many-to-many (m:n) relationships, attributes are transferred 
             from only one of the m source features to the n target features. This script
             includes a postprocess that flags resulting target features with the m:n
             match relationship. You can inspect the flagged features and retrieve the
             attributes from the desired source features if necessary.
"""

# Import system modules
import arcpy

# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = r"D:\conflationTools\ScriptExamples\data.gdb"

# Set local variables
sourceFeatures = "updateRoads"
targetFeatures = "baseRoads"
transfer_fields = [["RD_NAME", RD_ID"]]

search_distance = "300 Feet"
match_fields = [["RD_NAME", "FULLNAME"]]

outMatchTable = "ta_mtbl"

# Make a copy of the targetFeatures for attribute transfer
targetCopy = targetFeatures + "_Copy"
arcpy.management.CopyFeatures(targetFeatures, targetCopy)

# Performs attribute transfer
arcpy.edit.TransferAttributes(sourceFeatures, targetCopy, transfer_fields, search_distance, match_fields, outMatchTable)

"""
Note 1:  The result of TransferAttributes may contain errors; see the tool reference.
         Additional analysis steps may be necessary to check the results. These steps
         are not included in this script.

         The following process identifies m:n matches between source and target features 
         and flags features in targetCopy for inspection.
"""

# Add a field srcM_inMN to the match table to store the m count of source features in m:n relationship
field_srcM_inMN = "srcM_inMN"
arcpy.management.AddField(outMatchTable, field_srcM_inMN)

codeblock = """
def getM(fld):
    x = fld.split(\":\")[0]
    if x.isnumeric():
        if int(x) > 0:
            return int(x)
    return -1
"""

# Calculate values for srcM_inMN
arcpy.management.CalculateField(outMatchTable, field_srcM_inMN, "getM(!FM_MN!)", "PYTHON_9.3", codeblock)

# Make a table view of the match table, selecting srcM_inMN values greater than 1 
# (excluding 1:n relationships which don't need to be inspected)
arcpy.management.MakeTableView(outMatchTable, "mtable_view", field_srcM_inMN + "> 1")

# For the selected records, transfer srcM_inMN and SRC_FID fields and values to the targetCopy
arcpy.management.JoinField(targetCopy, "OBJECTID", "mtable_view", "TGT_FID", [["field_srcM_inMN", "SRC_FID"]])

"""
Note 2:  Now the fields srcM_inMN and SRC_FID are in the copy of the target features.
         The srcM_inMN values are the counts of matched source features. The SRC_FID
         values indicate the source feature IDs from which the transferred attributes
         originated.

         You can interactively review the transferred attributes for the
         flagged features. To replace any of them with those from a different
         source feature, make the edits as needed.
"""
TransferAttributes: Beispiel 3 (eigenständiges Skript)

Das folgende eigenständige Skript ist ein Beispiel für die Anwendung der Funktion TransferAttributes mit Übertragungsregeln in einer Skriptumgebung.

"""
Name:        TransferAttributes_example_script3.py
Description: Perform attribute transfer from newly updated roads (source) to
             existing base roads (target). When the source and target
             features are matched in many-to-one or many-to-many (m:n)
             relationships, attributes can be transferred based on transfer
             rules. This script shows how transfer rules are set.
"""

# Import system modules
import arcpy

# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = r"D:\conflationTools\ScriptExamples\data.gdb"

# Set local variables
sourceFeatures = "updateRoads"
targetFeatures = "baseRoads"
transfer_fields = "RD_NAME"

search_distance = "300 Feet"
match_fields = ""
outMatchTable = ""
transfer_rules = [["TRAVEL_DIRECTION", "One-Way"], ["SPEED_LIMIT", "MAX"]]

# Make a copy of the targetFeatures for attribute transfer
targetCopy = targetFeatures + "_Copy"
arcpy.management.CopyFeatures(targetFeatures, targetCopy)

# Perform attribute transfer
arcpy.edit.TransferAttributes(sourceFeatures, targetCopy, transfer_fields,
                              search_distance, match_fields, outMatchTable,
                              transfer_rules)