[Numpy-discussion] mask one array using another array
Mon Nov 21 20:13:39 CST 2011
I can't really figure out if that's the case in your code, but if you need
to repeat the mask along a new dimension (for instance, the first one), you
numpy.tile(mask.mask, [number_of_repeats] +  * len(mask.mask.shape))
(not sure that's the most elegant way to do it, but it should work)
2011/11/21 questions anon <firstname.lastname@example.org>
> Excellent, thank you.
> I just realised this does not work with my data because of the extra
> I have a mask that matches my 2-dimensional array but my data is for every
> hour over a month so the arrays do not match. Is there a way to make them
> match or mask each time?
> thanks again
> This is some of my code:
> for ncfile in files:
> if ncfile[-3:]=='.nc':
> print "dealing with ncfiles:",
> ncfile=Dataset(ncfile, 'r+', 'NETCDF4')
> TSFC=MA.masked_values(TSFC, fillvalue)
> On Tue, Nov 22, 2011 at 11:21 AM, Olivier Delalleau <email@example.com> wrote:
>> If your new array is x, you can use:
>> numpy.ma.masked_array(x, mask=mask.mask)
>> -=- Olivier
>> 2011/11/21 questions anon <firstname.lastname@example.org>
>>> I am trying to mask one array using another array.
>>> I have created a masked array using
>>> that looks something like:
>>> [1 - - 1,
>>> 1 1 - 1,
>>> 1 1 1 1,
>>> - 1 - 1]
>>> I have an array of values that I want to mask whereever my mask has a a
>>> how do I do this?
>>> I have looked at
>>> http://www.cawcr.gov.au/bmrc/climdyn/staff/lih/pubs/docs/masks.pdf but
>>> the command:
>>> d = array(a, mask=c.mask()
>>> results in this error:
>>> TypeError: 'numpy.ndarray' object is not callable
>>> I basically want to do exactly what that article does in that equation.
>>> Any feedback will be greatly appreciated.
>>> NumPy-Discussion mailing list
>> NumPy-Discussion mailing list
> NumPy-Discussion mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the NumPy-Discussion