I have given one NDVI map and one shapefile with 30 polygons. I was told to calculate the average of NDVI values in each polygon. Already extracted the NDVI map for each polygons using extraction tools.
1). If you have access to ArcGIS and the Spatial Analyst extension, one approach would be to use the Zonal Statistics geoprocessing tool:
2). If the Spatial Analyst extension is not available, another approach using ArcGIS would be to convert the NDVI results to a feature class, then use one of several vector overlay processes to combine the information, and then calculate the average. For example, if you have an Advanced ArcGIS license level you could use the Identity geoprocessing tool.
Note that before running the tool you will want to create a static field to hold the original area of each of the 30 polygons, as if there are multiple NDVI zones that end up in the original polygon, the result will be multiple polygons. Then after running the Identity, add another field called Percent. Divide the new shape.area by the original area to determine the percent of the original. You can then use that as part of finding out the overall average for your original polygons.
Note also that if an Advanced License is not available, there are other overlay tools that could work, but it will be a bit more involved.
Chris Donohue, GISP