Mehr

Spaltenwerte in Tabelle mit arcgisscripting summieren?

Spaltenwerte in Tabelle mit arcgisscripting summieren?


Ich muss ein Python-Skript erstellen, das die Werte einer Spalte in einer Tabelle summiert. Danach soll das Skript den Prozentsatz jeder einzelnen Zeile in dieser Spalte abrufen und diese Prozentwerte in eine andere Spalte einfügen. Ich kämpfe schon seit einiger Zeit, ich habe im Netz nachgeschaut, aber es gibt nichts dergleichen. Der nächste ist ein ArcGIS-Diskussionsforum-Thread, aber er ist für eine ältere Version von ArcMap oder ich verwende ihn falsch.

import arcgisscripting, sys gp = arcgisscripting.create() intable = sys.argv[1] field = sys.argv[2] # Suchcursorzeilen erstellen = gp.SearchCursor(intable) row = rows.Next() x = 0.0 # Geben Sie while-Schleife für jedes Feature/jede Zeile ein while row: x += row.getvalue(field) print x row = rows.next() #note Wert kann je nach Feldtyp gerundet werden gp.calculatefield(intable,sys.argv[3 ],float(x),"PYTHON")

Versuche dies:

ctotal = sum([row[0] für Zeile in arcpy.da.SearchCursor("inputtable",["columnX","PercentColumn"])])#column total with arcpy.da.UpdateCursor("inputtable",[" columnX","PercentColumn"]) als Cursor: für Zeile im Cursor: row[1] = (row[0]/float(ctotal))*100 cursor.updateRow(row)