我没有使用Google Earth Engine(GEE)的经验,因此在过去的一周里,我一直不停地尝试着解决这个问题。我正在尝试导出一个表,其中列出了3个选定州从2018年1月1日到2018年12月31日的城市的每日平均温度。我已经能够获取每个城市的年度平均值-但我真正想要的是每日平均值每个城市。我应该如何考虑这个问题?我应该写一个循环吗?
我已将名为城市的资产导入我感兴趣的城市边界到Google Earth Engine中。我写了一个函数来在城市地区应用平均温度的降低平均值,并试图将表格导出到我的Google云端硬盘,但是我收到一条错误消息:“ gridmet18.reduceRegions不是函数”。可以通过以下代码链接访问我尝试过的其他内容(在注释中):https://code.earthengine.google.com/5ae73d83044244229cb655bf4a75a47f。
var prism18 = prism.filterDate('2018-01-01','2018-12-31').select('tmean');
var gridmet18 = gridmet.filterDate('2018-01-01','2018-12-31').select('tmmx','tmmn','pr');
var cityMean = gridmet18.reduceRegions(
{
'reducer': ee.Reducer.mean(),
'scale': 4000,
'collection': cities,
});
// Commented out portion
//var daily_mean = ee.List.sequence(0, 1*1).map(function(n) {
//var start = ee.Date('2018-01-01').advance(n, 'daily');
//var end = start.advance(1, 'month');
//return ee.ImageCollection('OREGONSTATE/PRISM/AN81d').filterDate(start, end).select('tmean').mean();
//});
////////
//var month_mean = ee.List.sequence(0, 1*1).map(function(n) { // .sequence: number of years from starting year to present
//var start = ee.Date('2018-01-01').advance(n, 'daily'); // Starting date
//var end = start.advance(1, 'daily'); // Step by each iteration
//return ee.ImageCollection("IDAHO_EPSCOR/GRIDMET")
// .filterDate(start, end)
// .mean()
//.set('system:time_start', start.millis());
//});
///////
//var weatherCollection = ee.ImageCollection('IDAHO_EPSCOR/GRIDMET')
// .select('pr','tmmx','tmmn') // select precip band only
// .filterDate('2018-01-01', '2018-12-31');
//var weatherDaily = weatherCollection.reduce(ee.Reducer.mean());
//var cityCA = weatherDaily.reduceRegions({
//collection: CA,
//reducer: ee.Reducer.mean(),
//scale: 4000 // the resolution of the GRIDMET dataset
//});
// ***
//var polyOut = cityCA.select(['.*'],null,false);
// add a new column for year to each feature in the feature collection
//polyOut = polyOut.map(function(feature){
//return feature.set('Day',2018-01-01);
//});
// Table to Drive Export Example
Export.table.toDrive({
collection: polyOut,
description: 'GRIDMET_annual_precip_by_city',
fileFormat: 'CSV'
});
我真正想要的是,从2018年1月1日到2018年12月31日,每天在资产shapefile“城市”(上传到Google Earth Engine)中的每个城市的平均温度。通过注释的代码实现的是每个城市的年度平均值。我怀疑我必须对“系统:时间开始”做些什么,但是我不知道在哪里或如何放置此代码。任何建议都将不胜感激,因为我在GEE方面的经验有限。谢谢!