I want to create a single attribute table base on multiple overlapping raster. Some raster do not overlap completely but have common areas. In that situation I need the value from other raster while keeping the non overlapping raster value as missing. I am using arcmap 10.
There are a few methods to tackle using map algebra, extract by mask, and the reclassify tool. For example:
Raster A = base raster Raster B = additional raster who's values you want to use only in overlapping areas
1.) Use raster reclass to set all values other than "no value" to 1 for Raster B.
2.) Use raster math to multiply Raster A and the product of Step 1. The result will be a Boolean raster. Any value that isn't "no data" is an area of intersection.
3.) Use raster reclass on the newly created Boolean raster to set "No Value" to "1" and all other values to "0". The result will be an inverted product of Step 2.
4.) Use raster math to multiply Raster A with the product created in Step 3. The result will be a raster where all areas of non overlap between A and B is set with A values. Areas of overlap will be zero.
5.) Finally, use raster math to add the Step 4 product to the original Raster B. The result will a product raster that displays Raster A values in all cells except those that intersect (non-null) with Raster B. In those areas Raster B values will display.
There may be a more elegant solution that someone else can chime in with.
IMPORTANT : please take into consideration that this solution could work but only for small areas or low resolution rasters, as it can be very computionnaly expensive.
You could create a point layer on the common max extent of all your rasters with a step based on the smallest pixel size then collect all raster values with one tool.
- You can do that from a big polygon you create on your work area.
- You rasterize it with the Polygon to raster tool for example, pixel size the smallest you have.
- You convert it to points with the Raster to point tool.
- You then simply use the Extract Multi-values to points tool from Spatial Analyst to get any raster values (including NULL values where there is nodata) from all you rasters.
It will generate a global attribute table you need with a field for each raster you selected, free to you to perform an analysis on a new column then recreate a raster from it with the Feature to Raster tool