rows = arcpy.UpdateCursor("Junk1.dbf") fields = arcpy.ListFields("Junk1.dbf" ) #Create an empty list myList = [] i = 0 for row in rows: for field in fields: if field.name == 'ID': value = row.getValue(field.name) if value in myList: i += 1 row.TEST = i rows.updateRow(row) if value not in myList: myList.append(value)
import arcpy rows = arcpy.UpdateCursor("Filename") mylistarray = [] found = False for row in rows: value = row.getValue("ID") for x in mylistarray: if x[0] == value: found = True x[1] +=1 row.TEST = x[1] if not found: mylistarray.append([value,1]) row.TEST = 1 else: found = False rows.updateRow(row)
rows = arcpy.UpdateCursor("Junk1.dbf","","","","ID A") # sort by ID, ascending order #Create an empty list myList = [] i = 0 for row in rows: if i = 0: #first time around value = row.ID myList.append(value) i += 1 if row.ID != value: #if a new ID value = row.ID myList.append(value) i = 1 row.TEST = i rows.updateRow(row)
I usually use the approach of sorting by values, then comparing the previous value to the current value:rows = arcpy.UpdateCursor("Junk1.dbf","","","","ID A") # sort by ID, ascending order #Create an empty list myList = [] i = 0 for row in rows: if i = 0: #first time around value = row.ID myList.append(value) i += 1 if row.ID != value: #if a new ID value = row.ID myList.append(value) i = 1 row.TEST = i rows.updateRow(row)
rows = arcpy.UpdateCursor("Junk1.dbf","","","","ID A") # sort by ID, ascending order #Create an empty list myList = [] i = 0 for row in rows: if i == 0: #first time around value = row.ID myList.append(value) i += 1 print value, i if row.ID != value: #if a new ID value = row.ID myList.append(value) i = 1 row.TEST = i - 1 rows.updateRow(row)
rows = arcpy.UpdateCursor("Junk1.dbf","","","","ID A") # sort by ID, ascending order #Create an empty list myList = [] i = -1 for row in rows: if i == -1: #first time around value = row.ID myList.append(value) i += 1 print value, i if row.ID != value: #if a new ID value = row.ID myList.append(value) i = 0 row.TEST = i rows.updateRow(row)
any ideas on getting this run in the field calculator?