[Numpy-discussion] Masked arrays: Rationale for "False convention"

josef.pktd at gmail.com josef.pktd at gmail.com
Mon Sep 30 22:05:35 EDT 2013


On Mon, Sep 30, 2013 at 9:38 PM, Charles R Harris
<charlesr.harris at gmail.com> wrote:
>
>
>
> On Mon, Sep 30, 2013 at 7:05 PM, Ondřej Čertík <ondrej.certik at gmail.com>
> wrote:
>>
>> Hi,
>>
>> What is the rationale for using False in 'mask' for elements that
>> should be included?
>>
>> http://docs.scipy.org/doc/numpy/reference/maskedarray.generic.html
>>
>> As opposed to using True for elements that should be included, which
>> is what I was intuitively expecting when I started using the masked
>> arrays. This "True convention" also happens to be the one used in
>> Fortran, see e.g.:
>>
>> http://gcc.gnu.org/onlinedocs/gfortran/SUM.html
>>
>> So it's confusing why NumPy would chose a "False convention". Could it
>> be, that NumPy views 'mask' as opacity? Then it would make sense to
>> use True to make a value 'opaque'.
>
>
> There was a lengthy discussion of this point back when the NA work was done.
> You might be able to find the thread with a search.
>
> As to why it is as it is, I suspect it is historical consistency. Pierre
> wrote the masked array package for numpy, but it may very well go back to
> the masked array package implemented for Numeric.

I don't know ancient history, but I thought it's "natural". (Actually,
I never thought about it.)

I always thought `mask` indicates the "masked" (invalid, hidden)
values, and masked arrays mask the missing values.

http://en.wikipedia.org/wiki/Masking_tape

Josef

>
> Chuck
>
>
> _______________________________________________
> 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