2011-11-03 10 views
14

Tiene que haber una manera más rápida de reemplazar los valores, ¿no? Tengo una matriz 2D que representa una grilla de elevaciones/batimetría. Quiero reemplazar algo más de 0 a NAN y de esta manera es muy lento:Reemplazo rápido en el lugar de algunos valores en una matriz numpy

for x in range(elevation.shape[0]): 
    for y in range(elevation.shape[1]): 
     if elevation[x,y] > 0: 
      elevation[x,y] = numpy.NAN 

Parece que tiene tan ser una manera mucho mejor!

Respuesta

3
np.putmask(elevation, elevation > 0, np.nan) 
Cuestiones relacionadas