Basit bir birleştirme, filtredeki eşleşme koşuluna göre primary
koleksiyonundaki secondary
koleksiyonundaki herhangi bir öğeyle eşleşen öğeleri döndürür. Basit bir birleştirme yapmak için ee.Join.simple()
kullanın. Bu, farklı koleksiyonlar arasındaki ortak öğeleri bulmak veya bir koleksiyonu başka bir koleksiyona göre filtrelemek için yararlı olabilir. Örneğin, bazı eşleşen öğeleri (olabilecek) olan iki resim koleksiyonunu düşünün. Burada "eşleşme", bir filtrede belirtilen koşulla tanımlanır. Örneğin, eşleşmenin resim kimliklerinin eşit olması anlamına gelmesini sağlayın. Her iki koleksiyondaki eşleşen resimler aynı olduğundan, bu eşleşen resim grubunu bulmak için basit bir birleştirme işlemi kullanın:
Kod Düzenleyici (JavaScript)
// Load a Landsat 8 image collection at a point of interest. var collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA') .filterBounds(ee.Geometry.Point(-122.09, 37.42)); // Define start and end dates with which to filter the collections. var april = '2014-04-01'; var may = '2014-05-01'; var june = '2014-06-01'; var july = '2014-07-01'; // The primary collection is Landsat images from April to June. var primary = collection.filterDate(april, june); // The secondary collection is Landsat images from May to July. var secondary = collection.filterDate(may, july); // Use an equals filter to define how the collections match. var filter = ee.Filter.equals({ leftField: 'system:index', rightField: 'system:index' }); // Create the join. var simpleJoin = ee.Join.simple(); // Apply the join. var simpleJoined = simpleJoin.apply(primary, secondary, filter); // Display the result. print('Simple join: ', simpleJoined);
import ee import geemap.core as geemap
Colab (Python)
# Load a Landsat 8 image collection at a point of interest. collection = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA').filterBounds( ee.Geometry.Point(-122.09, 37.42) ) # Define start and end dates with which to filter the collections. april = '2014-04-01' may = '2014-05-01' june = '2014-06-01' july = '2014-07-01' # The primary collection is Landsat images from April to June. primary = collection.filterDate(april, june) # The secondary collection is Landsat images from May to July. secondary = collection.filterDate(may, july) # Use an equals filter to define how the collections match. filter = ee.Filter.equals(leftField='system:index', rightField='system:index') # Create the join. simple_join = ee.Join.simple() # Apply the join. simple_joined = simple_join.apply(primary, secondary, filter) # Display the result. display('Simple join:', simple_joined)
Önceki örnekte, birleştirilecek koleksiyonların zaman açısından yaklaşık bir ay çakıştığından bahsedilmektedir. Bu birleştirme uygulandığında çıkışın, yalnızca primary
koleksiyonundaki eşleşen resimleri içeren bir ImageCollection
olacağını unutmayın. Çıkış şu şekilde görünecektir:
Image LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140505 (17 bands) Image LANDSAT/LC08/C02/T1_TOA/LC08_044034_20140521 (17 bands)
Bu çıkış, primary
ve secondary
koleksiyonları arasında iki resmin (filtrede belirtildiği gibi) eşleştiğini, 5 Mayıs ve 21 Mayıs'taki resimleri gösterir.