ee.Dictionary.combine

  • Dictionary.combine() merges two dictionaries into a single dictionary.

  • If the same key exists in both dictionaries, the value from the second dictionary is used by default, unless overwrite is set to false.

  • Null values present in either of the input dictionaries are automatically excluded from the final combined dictionary.

  • It's accessible in both JavaScript and Python environments within the Earth Engine platform.

Combines two dictionaries. In the case of duplicate names, the output will contain the value of the second dictionary unless overwrite is false. Null values in both dictionaries are ignored / removed.

UsageReturns
Dictionary.combine(second, overwrite)Dictionary
ArgumentTypeDetails
this: firstDictionary
secondDictionary
overwriteBoolean, default: true

Examples

Code Editor (JavaScript)

// A dictionary (e.g. results of ee.Image.reduceRegion of an S2 image).
var dict1 = ee.Dictionary({
  B1: 182,
  B2: 219,
  B3: 443
});

// A second dictionary.
var dict2 = ee.Dictionary({
  Region: 'The Forest of Nisene Marks State Park',
  Image: 'Sentinel-2 surface reflectance (scaled by 1e4)',
  B1: -9999  // Note that the B1 key is present in both dictionaries.
});

print('Combined dictionaries (overwrite false)',
      dict1.combine(dict2, false));

print('Combined dictionaries (overwrite true)',
      dict1.combine(dict2, true));

Python setup

See the Python Environment page for information on the Python API and using geemap for interactive development.

import ee
import geemap.core as geemap

Colab (Python)

import pprint

# A dictionary (e.g. results of ee.Image.reduceRegion of an S2 image).
dic_1 = ee.Dictionary({
    'B1': 182,
    'B2': 219,
    'B3': 443
})

# A second dictionary.
dic_2 = ee.Dictionary({
    'Region': 'The Forest of Nisene Marks State Park',
    'Image': 'Sentinel-2 surface reflectance (scaled by 1e4)',
    'B1': -9999  # Note that the B1 key is present in both dictionaries.
})

print('Combined dictionaries (overwrite false)')
pprint.pprint(dic_1.combine(dic_2, False).getInfo())

print('\nCombined dictionaries (overwrite true)')
pprint.pprint(dic_1.combine(dic_2, True).getInfo())