Skip to content

[FEATURE REQUEST] Implement numpy.ma #490

@water5

Description

@water5

https://numpy.org/doc/stable/reference/maskedarray.generic.html

numpy.ma have some functions, can we implement several?
numpy.ma.array, numpy.ma.ones, numpy.ma.empty, numpy.ma.arange, numpy.ma.masked_where

import numpy.ma as ma
a = ma.arange(25).reshape(5, 5)
a

masked_array(
data=[[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19],
[20, 21, 22, 23, 24]],
mask=False,
fill_value=999999)

a.mask = a > 7
a

masked_array(
data=[[0, 1, 2, 3, 4],
[5, 6, 7, --, --],
[--, --, --, --, --],
[--, --, --, --, --],
[--, --, --, --, --]],
mask=[[False, False, False, False, False],
[False, False, False, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True]],
fill_value=999999)

a *= 10
a

masked_array(
data=[[0, 10, 20, 30, 40],
[50, 60, 70, --, --],
[--, --, --, --, --],
[--, --, --, --, --],
[--, --, --, --, --]],
mask=[[False, False, False, False, False],
[False, False, False, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True],
[ True, True, True, True, True]],
fill_value=999999)

a.mask = ma.nomask
a

masked_array(
data=[[0, 10, 20, 30, 40],
[50, 60, 70, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19],
[20, 21, 22, 23, 24]],
mask=[[False, False, False, False, False],
[False, False, False, False, False],
[False, False, False, False, False],
[False, False, False, False, False],
[False, False, False, False, False]],
fill_value=999999)

ma.masked_where(a > 8, a)

masked_array(
data=[[0, --, --, --, --],
[--, --, --, 8, --],
[--, --, --, --, --],
[5, 6, 7, 8, --],
[--, --, --, --, --]],
mask=[[False, True, True, True, True],
[ True, True, True, False, True],
[ True, True, True, True, True],
[False, False, False, False, True],
[ True, True, True, True, True]],
fill_value=999999)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestlow-prioritylow-priority bug, to be fixed, when everything else works

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions