Spaces:
Running
Running
""" | |
============= | |
Masked Arrays | |
============= | |
Arrays sometimes contain invalid or missing data. When doing operations | |
on such arrays, we wish to suppress invalid values, which is the purpose masked | |
arrays fulfill (an example of typical use is given below). | |
For example, examine the following array: | |
x = np.array([2, 1, 3, np.nan, 5, 2, 3, np.nan]) | |
When we try to calculate the mean of the data, the result is undetermined: | |
np.mean(x) | |
nan | |
The mean is calculated using roughly ``np.sum(x)/len(x)``, but since | |
any number added to ``NaN`` [1]_ produces ``NaN``, this doesn't work. Enter | |
masked arrays: | |
m = np.ma.masked_array(x, np.isnan(x)) | |
m | |
masked_array(data = [2.0 1.0 3.0 -- 5.0 2.0 3.0 --], | |
mask = [False False False True False False False True], | |
fill_value=1e+20) | |
Here, we construct a masked array that suppress all ``NaN`` values. We | |
may now proceed to calculate the mean of the other values: | |
np.mean(m) | |
2.6666666666666665 | |
.. [1] Not-a-Number, a floating point value that is the result of an | |
invalid operation. | |
.. moduleauthor:: Pierre Gerard-Marchant | |
.. moduleauthor:: Jarrod Millman | |
""" | |
from . import core | |
from .core import * | |
from . import extras | |
from .extras import * | |
__all__ = ['core', 'extras'] | |
__all__ += core.__all__ | |
__all__ += extras.__all__ | |
from numpy._pytesttester import PytestTester | |
test = PytestTester(__name__) | |
del PytestTester | |