我创建了对年度数据进行平均并创建列表列表的代码,如下所示: [['1988', 0.09680851063829785, 1.2444680851063827], ['1989', 0.2046808510638298, 1.0231914893617025]]
我想将此数据附加到我拥有的边界,但是当我这样做时,它只添加第一行数据。 如何将此数据附加到更多行?
# Add necessary fields if they don't already exist
if not arcpy.ListFields(outlayer, "YEAR"):
arcpy.AddField_management(outlayer, "YEAR", "SHORT")
if not arcpy.ListFields(outlayer, "NITRATE"):
arcpy.AddField_management(outlayer, "NITRATE", "FLOAT")
if not arcpy.ListFields(outlayer, "AMMONIA"):
arcpy.AddField_management(outlayer, "AMMONIA", "FLOAT")
print(f"Processing boundary data for '{outlayer}'...")
# Update the feature layer with data from ndata
with arcpy.da.UpdateCursor(outlayer, ['YEAR', 'NITRATE', 'AMMONIA']) as cursor:
for row, yearly_avg in zip(cursor, ndata):
year_value = yearly_avg[0]
no3_value = yearly_avg[1]
nh4_value = yearly_avg[2]
# Update cursor row with new values
row[0] = year_value
row[1] = no3_value
row[2] = nh4_value
# Update the row in the feature layer
cursor.updateRow(row)