Plug the following code into the Python window and it should do what you want.
You need to set the path to your FC and you'll need to put the list of all your possible fields that have values in the to fields
variable. We then sort the list from highest to lowest (alternative you could remove the reverse and simply list them in high to low). You then need to add a field which you'll symbolize from: SymbolField
. The cursor goes row by row and field by field. When it finds a value, it breaks the loop, uses that value and calcs SymbolField
. You'll need to update row[3]
to the index of whatever position your SymbolField
becomes. In my example I had 3 fields, and SymbolField becomes the 4th (or the 3rd in a zero index situation)
fc = r"c:\path\to\your\featureclass"
fields = sorted(["IND2010", "IND2011", "IND2012"], reverse=True)
arcpy.AddField_management(fc, "SymbolField", "FLOAT")
with arcpy.da.UpdateCursor(fc, fields + ["SymbolField"]) as cursor:
for row in cursor:
for index, f in enumerate(fields):
if row[index]:
print("Found value in {} of {}".format(f, row[index]))
row[3] = row[index]
break
cursor.updateRow(row)