6 votos

¿cómo obtener el máximo y el mínimo de un raster usando arcpy?

Tengo un archivo raster de temperatura de la superficie terrestre y quiero el máximo y el mínimo de la misma.

minLSTresult = arcpy.GetRasterProperties_management(raster_result, "MINIMUM")

minLST = minLSTresult.getOutput(0)

minLST devuelve u'261.22' . ¿Cómo podría obtener sólo el número de la misma?

0 votos

MinLSTresultado debería devolver su valor. Pruebe a imprimir minLSTresultado.

13voto

Tedy Puntos 46

Crear un raster utilizando la ruta completa de su mapa de bits. Los objetos raster tienen las propiedades minimum y maximum .

>>> rastFullPath = r"C:\Rasters\rasters.gdb\Slope"
>>> rast = arcpy.Raster (rastFullPath)
>>> rast.minimum
0.0
>>> rast.maximum
64.9616928100586

O puede utilizar su método y convertir la salida de unicode a float :

>>> float (arcpy.GetRasterProperties_management (rast, "MAXIMUM").getOutput (0))
64.9616928100586
>>> float (arcpy.GetRasterProperties_management (rast, "MINIMUM").getOutput (0))
0.0

7voto

Aaron Puntos 25882

Eso es simplemente indicar que el valor es un Unicode cadena. Puede utilizar esta cadena unicode en la mayoría de las situaciones. Sin embargo, si necesita controlar totalmente el tipo, conviértalo en float formato.

test = unicode('261.22')

>>> test
u'261.22'

>>> type(test)
<type 'unicode'>

test2 = float(test)
>>> test2
261.22

>>> type(test2)
<type 'float'>

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X