Beschreibung
In ArcGIS Pro ist es möglich, alle Werte eines Feldes durch einen Standardwert zu ersetzen. Manchmal ist es jedoch erforderlich, nur bestimmte Werte des Felds zu ersetzen, um die Datengenauigkeit zu verbessern und eine differenzierte räumliche Analyse zu ermöglichen.
In diesem Artikel werden Felder mit einer einzelnen "0" im Feld "Entfernung" mithilfe eines Arcade-Ausdrucks durch "1" ersetzt. Die folgende Abbildung zeigt die Attributtabelle mit den zu ersetzenden Feldwerten.
Lösung oder Problemumgehung
- Öffnen Sie das ArcGIS Pro-Projekt.
- Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf den Feature-Layer, und klicken Sie auf Attributtabelle.
- Klicken Sie in der Attributtabelle mit der rechten Maustaste auf den Feldnamen, und wählen Sie Feld berechnen aus. In diesem Beispiel ist das Feld "Entfernung" ausgewählt.
- Geben Sie im Fenster Feld berechnen die folgenden Parameter an:
- Stellen Sie sicher, dass in Eingabetabelle der in Schritt 2 ausgewählte Layer bereits enthalten ist. In diesem Beispiel ist die Eingabetabelle "test".
- Stellen Sie sicher, dass in Feldname das in Schritt 3 ausgewählte Feld bereits enthalten ist. In diesem Beispiel lautet der Feldname "Entfernung".
- Wählen Sie für Ausdruckstyp die Option Arcade aus.
- Geben Sie im Ausdrucksfeld für Ausdruck den nachstehenden Ausdruck an. Ersetzen Sie <field_name> durch den Namen des Feldes, das durch einen bestimmten Wert ersetzt werden muss. Ersetzen Sie dann <initial_value> durch den Feldwert, der ersetzt werden muss, und <new_value> mit dem Wert des Ersatzfeldes.
if ($feature.<field_name> == '<initial_value>') {
Replace($feature.<field_name>, '<initial_value>', '<new_value>')
} else {
return($feature.<field_name>)
}
Note:
If numeric or date field values are used, remove the single quotes (' ') on <initial_value> and <new_value>.
- Klicken Sie auf das Symbol Überprüfen, um den Ausdruck zu validieren.
- Klicken Sie auf OK , um das Skript auszuführen.
In der folgenden Abbildung sind die neuen Feldwerte im Feld "Entfernung" zu sehen.