Merge 如何使用某些特征的平均值和不同特征集合的位置/形状创建特征集合?

Merge 如何使用某些特征的平均值和不同特征集合的位置/形状创建特征集合?,merge,qgis,google-earth-engine,Merge,Qgis,Google Earth Engine,我有两个特征集合,一个包含带有测量的点数据,另一个标记不同簇的多边形,在这些簇中,几个测量是在一起进行的。在Google earth engine中,我试图创建一个新的(点)特征集合(或编辑多边形特征),其中包含每个独立簇的平均测量值 我使用以下代码连接两个不同的要素集合(以便多边形也包含点数据): 但是,由于在一个簇内进行多个测量,因此会生成一个featurecollection,其中包含一个列表,其中的测量点位于特定簇内。相反,我寻找的是平均测量值作为多边形的属性。在Google earth

我有两个特征集合,一个包含带有测量的点数据,另一个标记不同簇的多边形,在这些簇中,几个测量是在一起进行的。在Google earth engine中,我试图创建一个新的(点)特征集合(或编辑多边形特征),其中包含每个独立簇的平均测量值

我使用以下代码连接两个不同的要素集合(以便多边形也包含点数据):

但是,由于在一个簇内进行多个测量,因此会生成一个featurecollection,其中包含一个列表,其中的测量点位于特定簇内。相反,我寻找的是平均测量值作为多边形的属性。在Google earth引擎(或者QGIS)中是如何做到这一点的

我尝试使用
ee.FeatureCollection.map
计算每个多边形的平均值:

var clust = ee.FeatureCollection(Clusters).map(function(feature) {
  var meanClay = Measurements.reduceColumns({
    reducer: ee.Reducer.mean(),
    selectors: ['Clay']
  })
  return feature.set('mean', meanClay)
})
现在,如果我打印变量“clust”,我会得到一个featurecollection,其中包含(测量的)属性clay的平均值。但是,每个特征都会得到相同的值(所有测量点的平均值,而不仅仅是特定簇内的测量点的平均值)


为了清晰起见:我得到了一个包含78个测量位置(点)的shapefile,它们作为featurecollection加载到我的脚本中,并包含测量值。除此之外,我还有一个带有多边形的shapefile,它指示了16个区域,其中执行了一组测量(因此每个集群中大约有4-5个测量)。现在,我试图获得每个多边形(簇)内每个单个多边形的所有测量值(点)的平均值。

我通过对点数据使用
filterBounds()
解决了这个问题。这里,filterBounds用于过滤点数据,使其仅由特定簇内的点组成

var clust = ee.FeatureCollection(Clusters).map(function(feature) {
  var meanClay = ee.FeatureCollection(Measurements.filterBounds(feature.geometry()))
    .reduceColumns({
      reducer: ee.Reducer.mean(),
      selectors: ['Clay']
    })
  return feature.set(meanClay)
})

我不确定我是否理解您的数据的形状,但是您是否查看了
ee.FeatureCollection.map()
以总结每个多边形中包含的点位置?我现在尝试了
ee.FeatureCollection.map()
,但是我对Google Earth Engine还很陌生,没有得到我想要的结果。我在原来的问题中补充了一些额外的信息。我希望现在更清楚。在映射函数中,您应该使用
功能,而不是
度量值。获取
以提取要汇总的属性。
var clust = ee.FeatureCollection(Clusters).map(function(feature) {
  var meanClay = ee.FeatureCollection(Measurements.filterBounds(feature.geometry()))
    .reduceColumns({
      reducer: ee.Reducer.mean(),
      selectors: ['Clay']
    })
  return feature.set(meanClay)
})