[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