Итерация по GEE - PullRequest
       16

Итерация по GEE

0 голосов
/ 03 апреля 2019

процесс итерации по imageCollection хорошо документирован, но это не относится к featureCollection. При попытке применить его появляется несколько ошибок. Я показываю здесь один из них. Если кто-то преуспел в этой процедуре, помощь приветствуется.

var dict1 = ee.Dictionary({'Name': null, 'cultivo': null, 'imageId':null,'sum':null})

var n_list = ee.List(ee.Feature(null,dict1));
print(n_list)

var sum2 = function(feature,list){
  var actual = feature.get('sum')
  var previous = ee.Feature(ee.List(list).get(-1))
  var added = actual.add(previous)
  return ee.List(list).add(added)
    };

var summarize = ee.FeatureCollection(ee.List(sumChange.iterate(sum2,n_list)));
print('summarise',summarize)

Ошибка actual.add is not a function

1 Ответ

0 голосов
/ 03 апреля 2019

правильный путь выглядит следующим образом,

var dict1 = ee.Dictionary({'Name': null, 'cultivo': null, 'imageId':null,'sum':0})
//
var n_list = ee.List([ee.Feature(sumChange.first().geometry(),dict1)]);
//print(n_list)

var sum2 = function(feature,list){
  var actual = ee.Number(feature.get('sum'))
  var previous = ee.Number(ee.Feature(ee.List(list).get(-1)).get('sum'))
  var keepProperties = ['Name', 'cultivo', 'imageId','sum'];
  var added = actual.add(previous)
  return ee.List(list).add(feature.set('sumatoria', added).copyProperties(feature,keepProperties))
    };

var summarize = ee.FeatureCollection(ee.List(sumChange.iterate(sum2,n_list)));
print('summarise',summarize)
...