HOW TO
Eine Attributtabelle kann mehrere Felder mit NULL-Werten enthalten, und diese Felder werden standardmäßig mit einem Leerzeichen ausgefüllt. Es kann vorkommen, dass bestimmte Werkzeuge oder Funktionen nicht ausgeführt werden, wenn die Felder keine Zeichen enthalten (Felder, die keine NULL-Werte zulassen).
In diesem Artikel werden zwei Methoden zum Ersetzen von NULL-Werten in einer Attributtabelle beschrieben: Ersetzen der NULL-Werte in der Attributtabelle und Ersetzen der NULL-Werte in einer einzelnen Spalte (einem Feld).
Ersetzen der NULL-Werte in einer Attributtabelle mithilfe des ArcPy-Moduls
Hinweis: Das folgende Skript kann in der Python-Konsole von ArcMap oder als eigenständiges Skript verwendet werden.
import arcpy
path = r'C:\Users\User\Test\Misc\Test.gdb\Testing'
fieldObs = arcpy.ListFields(path) fieldNames = []
for field in fieldObs: fieldNames.append(field.name) del fieldObs fieldCount = len(fieldNames)
with arcpy.da.UpdateCursor(path, fieldNames) as curU: for row in curU: rowU = row for field in range(fieldCount): if rowU[field] == None: rowU[field] = "0" curU.updateRow(rowU)
del curU
Nachfolgend finden Sie das vollständige Skript:
import arcpy path = r'C:\Users\User\Desktop\Misc\Piracy.gdb\Continents' fieldObs = arcpy.ListFields(path) fieldNames = [] for field in fieldObs: fieldNames.append(field.name) del fieldObs fieldCount = len(fieldNames) with arcpy.da.UpdateCursor(path, fieldNames) as curU: for row in curU: rowU = row for field in range(fieldCount): if rowU[field] == None: rowU[field] = "0" curU.updateRow(rowU) del curU
Ersetzen der NULL-Werte in einem einzelnen Feld mit Feldberechnung und Python-Parser
def updateValue(value): if value == None: return '0' else: return value
updateValue(!Field_Name!)
Unterstützung durch ArcGIS-Experten anfordern
Esri Support App herunterladen