Stay organized with collectionsSave and categorize content based on your preferences.
To get image statistics in multiple regions stored in aFeatureCollection,
you can useimage.reduceRegions()to reduce multiple regions at once.
The input toreduceRegions()is anImageand aFeatureCollection. The output is anotherFeatureCollectionwith thereduceRegions()output set as properties on eachFeature.
In this example, means of the Landsat 7 annual composite bands in each feature geometry
will be added as properties to the input features:
Observe that new properties, keyed by band name, have been added to theFeatureCollectionto store the mean of the composite in eachFeaturegeometry. As a result, the output of the print statement should
look something like:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-01-02 UTC."],[[["\u003cp\u003e\u003ccode\u003eimage.reduceRegions()\u003c/code\u003e can be used to calculate statistics for an image within multiple regions defined by a \u003ccode\u003eFeatureCollection\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe output is a new \u003ccode\u003eFeatureCollection\u003c/code\u003e where each feature has new properties containing the calculated statistics.\u003c/p\u003e\n"],["\u003cp\u003eThis example demonstrates calculating the mean of Landsat 7 bands for each county in Maine.\u003c/p\u003e\n"],["\u003cp\u003eThe calculated statistics are added as properties to the original features, with band names as keys.\u003c/p\u003e\n"]]],["The core content explains how to use `image.reduceRegions()` to calculate image statistics across multiple regions. This method takes an `Image` and a `FeatureCollection` as input. It then outputs a new `FeatureCollection`, where each feature has the results of the reduction (e.g., mean) as properties. The example uses Landsat 7 data and Maine counties, calculating the mean of each band within each county's geometry and adding them as properties in the resulting feature.\n"],null,["# Statistics of Image Regions\n\nTo get image statistics in multiple regions stored in a `FeatureCollection`,\nyou can use `image.reduceRegions()` to reduce multiple regions at once.\nThe input to `reduceRegions()` is an `Image` and a\n`FeatureCollection`. The output is another `FeatureCollection`\nwith the `reduceRegions()` output set as properties on each `Feature`.\nIn this example, means of the Landsat 7 annual composite bands in each feature geometry\nwill be added as properties to the input features:\n\n### Code Editor (JavaScript)\n\n```javascript\n// Load input imagery: Landsat 7 5-year composite.\nvar image = ee.Image('LANDSAT/LE7_TOA_5YEAR/2008_2012');\n\n// Load a FeatureCollection of counties in Maine.\nvar maineCounties = ee.FeatureCollection('TIGER/2016/Counties')\n .filter(ee.Filter.eq('STATEFP', '23'));\n\n// Add reducer output to the Features in the collection.\nvar maineMeansFeatures = image.reduceRegions({\n collection: maineCounties,\n reducer: ee.Reducer.mean(),\n scale: 30,\n});\n\n// Print the first feature, to illustrate the result.\nprint(ee.Feature(maineMeansFeatures.first()).select(image.bandNames()));\n```\nPython setup\n\nSee the [Python Environment](/earth-engine/guides/python_install) page for information on the Python API and using\n`geemap` for interactive development. \n\n```python\nimport ee\nimport geemap.core as geemap\n```\n\n### Colab (Python)\n\n```python\n# Load input imagery: Landsat 7 5-year composite.\nimage = ee.Image('LANDSAT/LE7_TOA_5YEAR/2008_2012')\n\n# Load a FeatureCollection of counties in Maine.\nmaine_counties = ee.FeatureCollection('TIGER/2016/Counties').filter(\n ee.Filter.eq('STATEFP', '23')\n)\n\n# Add reducer output to the Features in the collection.\nmaine_means_features = image.reduceRegions(\n collection=maine_counties, reducer=ee.Reducer.mean(), scale=30\n)\n\n# Print the first feature, to illustrate the result.\ndisplay(ee.Feature(maine_means_features.first()).select(image.bandNames()))\n```\n\nObserve that new properties, keyed by band name, have been added to the\n`FeatureCollection` to store the mean of the composite in each\n`Feature` geometry. As a result, the output of the print statement should\nlook something like: \n\n```\nFeature (Polygon, 7 properties)\n type: Feature\n geometry: Polygon, 7864 vertices\n properties: Object (7 properties)\n B1: 24.034822192925134\n B2: 19.40202233717122\n B3: 13.568454303016292\n B4: 63.00423784301736\n B5: 29.142707062821305\n B6_VCID_2: 186.18172376827042\n B7: 12.064469664746415\n \n```"]]