[Numpy-discussion] NetCDF4/numpy question

Howard howard@renci....
Fri Jan 27 15:54:13 CST 2012


Hi Olivier

I added this to the code:

print "modelData:", type(modelData), modelData.shape, modelData.size
print "dataMin:", type(dataMin)

and got

modelData: <class 'numpy.ma.core.MaskedArray'> (1767734,) 1767734
dataMin: <type 'float'>

What's funny is I tried the example from

http://docs.scipy.org/doc/numpy-1.6.0/numpy-user.pdf

and it works fine for me. Maybe 1.7 million is over some threshhold?

Thanks
Howard

 >>> myarr = np.ma.core.MaskedArray([1., 0., np.nan, 3.])
 >>> myarr[np.isnan(myarr)] = 30
 >>> myarr
masked_array(data = [  1.   0.  30.   3.],
              mask = False,
        fill_value = 1e+20)


On 1/27/12 4:42 PM, Olivier Delalleau wrote:
> What are the types and shapes of modelData and dataMin? (it works for 
> me with modelData a (3, 4) numpy array and dataMin a Python float, 
> with numpy 1.6.1)
>
> -=- Olivier
>
> 2012/1/27 Howard <howard@renci.org <mailto:howard@renci.org>>
>
>     Hi all
>
>     I am a fairly recent convert to python and I have got a question
>     that's got me stumped.  I hope this is the right mailing list:
>     here goes :)
>
>     I am reading some time series data out of a netcdf file a single
>     timestep at a time.  If the data is NaN, I want to reset it to the
>     minimum of the dataset over all timesteps (which I already know). 
>     The data is in a variable of type numpy.ma.core.MaskedArray called
>     modelData.
>
>     If I do this:
>
>           for i in range(len(modelData)):
>              if math.isnan(modelData[i]):
>                 modelData[i] = dataMin
>
>     I get the effect I want, If I do this:
>
>        modelData[np.isnan(modelData)] = dataMin
>
>     it doesn't seem to be working.  Of course I could just do the
>     first one, but len(modelData) is about 3.5 million, and it's
>     taking about 20 seconds to run.  This is happening inside of a
>     rendering loop, so I'd like it to be as fast as possible, and I
>     thought the second one might be faster, and maybe it is, but it
>     doesn't seem to be working! :)
>
>     Any ideas would be much appreciated.
>
>     Thanks
>     Howard
>
>     -- 
>     Howard Lander <mailto:howard@renci.org>
>     Senior Research Software Developer
>     Renaissance Computing Institute (RENCI) <http://www.renci.org>
>     The University of North Carolina at Chapel Hill
>     Duke University
>     North Carolina State University
>     100 Europa Drive
>     Suite 540
>     Chapel Hill, NC 27517
>     919-445-9651
>
>     _______________________________________________
>     NumPy-Discussion mailing list
>     NumPy-Discussion@scipy.org <mailto:NumPy-Discussion@scipy.org>
>     http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>


-- 
Howard Lander <mailto:howard@renci.org>
Senior Research Software Developer
Renaissance Computing Institute (RENCI) <http://www.renci.org>
The University of North Carolina at Chapel Hill
Duke University
North Carolina State University
100 Europa Drive
Suite 540
Chapel Hill, NC 27517
919-445-9651
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20120127/35c576ec/attachment.html 


More information about the NumPy-Discussion mailing list