[Numpy-discussion] Masked Array for NumPy 1.7

Travis Oliphant travis at continuum.io
Fri May 18 18:25:23 EDT 2012

The best way to keep in the loop is to comment on this list and pay attention to threads that discuss it.    Thank you for speaking up, as I was aware of your significant use of the current masked array in NumPy, but it is good when you can articulate your use-cases and APIs that are helpful or annoying to you. 


On May 18, 2012, at 4:54 PM, Doutriaux, Charles wrote:

> Travis,
> We have a significant user base for masked arrays, with a lot of
> "real-life" experience, use-cases and data.
> We would really like to get involved on this, please keep us in the loop.
> C.
> On 5/18/12 2:47 PM, "Travis Oliphant" <travis at continuum.io> wrote:
>> Hey all, 
>> After reading all the discussion around masked arrays and getting input
>> from as many people as possible, it is clear that there is still
>> disagreement about what to do, but there have been some fruitful
>> discussions that ensued.
>> This isn't really new as there was significant disagreement about what to
>> do when the masked array code was initially checked in to master.   So,
>> in order to move forward, Mark and I are going to work together with
>> whomever else is willing to help with an effort that is in the spirit of
>> my third proposal but has a few adjustments.
>> The idea will be fleshed out in more detail as it progresses, but the
>> basic concept is to create an (experimental) ndmasked object in NumPy 1.7
>> and leave the actual ndarray object unchanged.   While the details need
>> to be worked out here,  a goal is to have the C-API work with both
>> ndmasked arrays and arrayobjects (possibly by defining a base-class
>> C-level structure that both ndarrays inherit from).     This might also
>> be a good way for Dag to experiment with his ideas as well but that is
>> not an explicit goal.
>> One way this could work, for example is to have PyArrayObject * be the
>> base-class array (essentially the same C-structure we have now with a
>> HASMASK flag). Then, the ndmasked object could inherit from PyArrayObject
>> * as well but add more members to the C-structure.     I think this is
>> the easiest thing to do and requires the least amount of code-change.
>> It is also possible to define an abstract base-class PyArrayObject *
>> that both ndarray and ndmasked inherit from.     That way ndarray and
>> ndmasked are siblings even though the ndarray would essentially *be* the
>> PyArrayObject * --- just with a different type-hierarchy on the python
>> side. 
>> This work will take some time and, therefore, I don't expect 1.7 to be
>> released prior to SciPy Austin with an end of June target date.   The
>> timing will largely depend on what time is available from people
>> interested in resolving the situation.   Mark and I will have some
>> availability for this work in June but not a great deal (about 2
>> man-weeks total between us).    If there are others who can step in and
>> help, it will help accelerate the process.
>> Best regards,
>> -Travis
>> _______________________________________________
>> NumPy-Discussion mailing list
>> NumPy-Discussion at scipy.org
>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion

More information about the NumPy-Discussion mailing list