主页 > 其他  > 

GEE:计算长时间序列NPP与NDVI之间的相关系数

GEE:计算长时间序列NPP与NDVI之间的相关系数

GEE中内置了计算相关系数的函数,可以分析两个变量之间的相关性,比如要分析两个波段之间的相关性,主要用到ee.Reducer.pearsonsCorrelation()函数。

ee.Reducer.pearsonsCorrelation() 内容:创建一个双输入归约器,用于计算 Pearson 的积矩相关系数和相关性 = 0 的 2 边 p 值检验。 无输入值,返回为Reducer. 以计算长时间序列NPP与NDVI之间的相关系数为例:

// NPP var npp = ee.ImageCollection('MODIS/006/MOD17A3H') .filterDate('2000-01-01', '2020-12-31') .select('Npp'); // NDVI var ndvi = ee.ImageCollection('MODIS/006/MOD13A1') .filterDate('2000-01-01', '2020-12-31') .select('NDVI'); // China var china = ee.FeatureCollection('USDOS/LSIB_SIMPLE/2017') .filter(ee.Filter.eq('country_na', 'China')); // 计算每年的平均NPP var annualNPP = ee.ImageCollection( ee.List.sequence(2000, 2020).map(function(year) { year = ee.Number(year); var yearlyNPP = npp.filter(ee.Filter.calendarRange(year, year, 'year')) .mean() .set('year', year); return yearlyNPP; }) ); // 计算每年的平均NDVI var annualNDVI = ee.ImageCollection( ee.List.sequence(2000, 2020).map(function(year) { year = ee.Number(year); var yearlyNDVI = ndvi.filter(ee.Filter.calendarRange(year, year, 'year')) .mean() .set('year', year); return yearlyNDVI; }) ); // 合并NPP和NDVI数据 var combined = annualNPP.map(function(nppImage) { var year = ee.Number(nppImage.get('year')); var ndviImage = annualNDVI.filter(ee.Filter.eq('year', year)).first(); return nppImage.addBands(ndviImage); }); // 计算相关系数 var correlation = combined.reduce(ee.Reducer.pearsonsCorrelation()); print('Correlation between NPP and NDVI:', correlation); // 可视化相关系数 Map.addLayer(correlation, {min: -1, max: 1}, 'Correlation');

计算相关系数的主要为var corr1=collection.select(‘NDVI’,‘EVI’) .reduce(ee.Reducer.pearsonsCorrelation());,输出包括相关系数和p值。

标签:

GEE:计算长时间序列NPP与NDVI之间的相关系数由讯客互联其他栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“GEE:计算长时间序列NPP与NDVI之间的相关系数