Google Earth Engine(GEE)基本数据类型转换以及降维

在最近GEE写代码的过程中,因为结果要求为一个数字,而不是一个列表或者数组的形式,但是有些函数的返回值会是Array或者List类型,所以需要进行数据类型转换,但是网上有些教程并没有写,所以在这举两个例子。

当函数返回值为Array类型

这里使用模拟数据进行展示,首先建立一个二维数组(可当成调用方法时的返回值,用二维数组进行接收),然后通过toList()方法转换为List类型,List列表,可以通过get方法取出数值,也就是给数组降低维度,最后将传出的值传给定义的Array进行最后的取值。

var a=ee.Array([[1.1]])  //定义
print(a)
var b=ee.List([[]])   //定义二维列表进行转换
b=a.toList();
print(b)
var c=ee.List([])
c=b.get(0)
print(c)
var d=ee.Array(c);
print('1111',d.get([0]))

在这里插入图片描述
第一个输出是Array类型
第二个输出是List类型
第三个输出是Object类型
第四个输出是Number类型
具体返回值类型,可以通过查看GEE官方文档。

当函数返回值为List类型

其实方法大同小异,先定义List列表,再进行降维,最后进行数组取值。

var a=ee.List([[1.1]]);
print(a)
var b=ee.List([]);
b=a.get(0);
print(b)
var c=ee.Array(b);
print('1111',c.get([0]))

在这里插入图片描述

总结

其实数据类型转换,主要是将有些方法返回的二维数据对象进行降维转换为一维对象,然后再通过取值得到最终的Number类型,在GEE中也有很多方法的介绍。
这里解释一下每个输出后面会有个JSON,是因为GEE的代码是客户端传给服务器进行运行,而不是在本地进行运行,所以服务器在将结果传回客户端时,会以JSON的形式进行数据回传。

猜你喜欢

转载自blog.csdn.net/qq_51118386/article/details/124361187