2

ArcGIS v10.1 ModelBuilder

Using ModelBuilder and map algebra, I want to compute a ten year average grid from a stack of 10. The problem is that only 1 grid (%raster%), the last one through the Iterate Rasters tool, is available as input to the Raster Calculator tool.

I am using the Iterate Rasters tool to go through a folder of asc grids. The folder contains ten subfolders, one for each year from 2001 to 2010, inclusive. Inside of each of these are twelve asc grids, one for each month. The monthly grids have identical names for all years where the number indicates the month (e.g., name07.asc). I am using a wildcard that works to successfully iterate over the grids (e.g., ten "July" grids), and define the projection for each; However, the raster calculator then only accepts one of these grids instead of all ten.

Is it possible to use the Iterate Rasters tool with the Raster Calculator tool in ModelBuilder?

1
  • Why not use arcpy? It would be easier to iterate all the raster by the command ListRasters and do your calculations by the command RasterCalculator.
    – Seen
    Mar 20, 2013 at 3:13

1 Answer 1

5

If you try to output the iterate raster tool directly into raster calculator, you will only see the last iteration in the raster calculator layers and variables list. To get around this nuisance in model builder, use Collect Values to generate a list that you can pass off to Cell Statistics to do your calculations. Simply choose the "MEAN" overlay statistic and you will have your average grid calculations. You can always bring this average grid up in raster calculator if you need to make further calculations.

enter image description here

1
  • 1
    Excellent solution. I got rid of my raster calculator tool and use cell statistics instead. Works perfectly. Thanks
    – user15968
    Mar 20, 2013 at 16:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.