Ich habe nach einer Lösung dafür gesucht, aber keine vollständige gefunden. Ich habe Dutzende von Tabellen, die jeweils Tausende von Zeilen enthalten. Wenn ein Linienelement geteilt wird, wird ein anderer Datensatz erstellt, aber die neue Zeile (Datensatz) hat immer noch die alte ASSETID. Dies bedeutet, dass ein Duplikat ASSETID geboren wird. Ist das Wartungs-Python-Skript, das alle doppelten ASSETIDs findet und sie null macht? das würde nur die ursprüngliche ASSETID hinterlassen, ich hätte ein Skript, das danach ausgeführt würde, das das ASSETID-Feld mit einer neuen, zufällig generierten ASSETID füllen würde. Ich war in der Lage, alle doppelten Werte zu erstellen, eine Liste, wie oft ein Wert auftritt, eine neue Spalte in der Tabelle, die ein 'Y' hat, wenn der Wert wiederholt wird usw., aber bisher konnte ich doppelte entfernen Feldwerte unter Beibehaltung aller anderen Elemente in der Zeile.Löschen (make null) doppelte Feldwerte
-3
A
Antwort
0
Da Sie eine Liste der Duplikate ASSETID
s haben, können Sie ein ArcPy UpdateCursor verwenden, um nur dieses Attribut zu ändern.
with arcpy.da.UpdateCursor(feature_class, ["ASSETID"]) as cursor:
for row in cursor:
if row[0] in unique_id_list: # if the ASSETID is in the list
row[0] = None
cursor.updateRow(row)
Dies wird alle Zeilen ändern, die haben, dass ASSETID
Wert, aber, und das „Original“ intakt nicht verlassen. Sie würden eine zusätzliche Liste der ursprünglichen (durch eine andere eindeutige Kennung, beispielsweise OBJECTID
) benötigen und schließen diejenigen, z.B .:
if row[0] in unique_id_list and row[1] not in original_id_list:
Verwandte Themen
- 1. Make Eine Ganzzahl Null
- 2. negative doppelte Null ungleich Null?
- 3. löschen doppelte Zeilen
- 4. löschen doppelte Fremdschlüssel
- 5. Doppelte Links zum Löschen
- 6. Wie behandelt man doppelte Anführungszeichen innerhalb Feldwerte mit CSV-Modul?
- 7. Make-Derivat Null in Theano
- 8. Doppelte Zeilen löschen (nicht alle Duplikate löschen)
- 9. Pandas: löschen Sie doppelte Zeilen
- 10. SQL: Doppelte Zeilen löschen? (PHP)
- 11. Löschen Sie doppelte E-Mails
- 12. löschen doppelte Datensätze außer einem
- 13. löschen doppelte Elemente in verknüpften Liste
- 14. Redux Formular Clearing Feldwerte
- 15. Make C++ einen Zeiger auf NULL interpretieren als Null
- 16. Make Liste der nicht-Null-Einträge
- 17. Aufruf eine Member-Funktion make() auf null
- 18. ON LÖSCHEN SET NULL TRIGGER LÖSCHEN
- 19. Wie kann ich fast alle Feldwerte in eine doppelte Zeile in Access VBA kopieren?
- 20. Excel löschen doppelte Werte aus Zeilen
- 21. Doppelte Protokollereignisse beim Löschen der Registrierung
- 22. Löschen Sie mehrere doppelte Zeilen in Tabelle
- 23. Löschen Sie doppelte Paare in MySQL-Tabelle
- 24. Löschen Doppelte Zeilen beim Gruppieren eines anderen
- 25. Löschen Sie doppelte Dateien mit ant?
- 26. PostgresSQL wie doppelte Werte zu löschen
- 27. Doppelte Spaltenwerte in SQL Reporting Services löschen
- 28. Verwenden von Gruppen, nur doppelte NaNs löschen
- 29. Löschen Sie doppelte Werte in PHP-Array
- 30. Doppelte Elemente des N-dimensionalen Vektors löschen
Ich denke, man sollte diese Forschung/fragen Sie an der [gis.se] Stapel Austausch statt. – PolyGeo