Oh, one other thing I should mention:

I did the install of numpy yesterday and I also have 1.6.1

Howard

On 1/27/12 4:54 PM, Howard wrote:
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 <how...@renci.org <mailto:how...@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:how...@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:how...@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


--
Howard Lander <mailto:how...@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
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to