diff options
author | pierregm <pierregm@localhost> | 2009-01-19 08:53:53 +0000 |
---|---|---|
committer | pierregm <pierregm@localhost> | 2009-01-19 08:53:53 +0000 |
commit | 767ea8504509a32f092be069df1ea07c2452f85a (patch) | |
tree | 9c39cce2b5a359eab8e2fa47e44597239a005b08 | |
parent | 9efaa09baca5ce2d64447bdcc91556227ab717c2 (diff) | |
download | numpy-767ea8504509a32f092be069df1ea07c2452f85a.tar.gz |
* renamed FlatIter to MaskedIterator
* added __getitem__ to MaskedIterator
-rw-r--r-- | numpy/ma/core.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/numpy/ma/core.py b/numpy/ma/core.py index 9655f2dc6..a72c6db2c 100644 --- a/numpy/ma/core.py +++ b/numpy/ma/core.py @@ -1464,10 +1464,11 @@ class _arraymethod(object): return result #.......................................................... -class FlatIter(object): +class MaskedIterator(object): "Define an interator." def __init__(self, ma): self.ma = ma + self.ma1d = ma.ravel() self.ma_iter = np.asarray(ma).flat if ma._mask is nomask: @@ -1478,10 +1479,12 @@ class FlatIter(object): def __iter__(self): return self + def __getitem__(self, indx): + return self.ma1d.__getitem__(indx) + ### This won't work is ravel makes a copy def __setitem__(self, index, value): - a = self.ma.ravel() - a[index] = value + self.ma1d[index] = value def next(self): "Returns the next element of the iterator." @@ -2168,7 +2171,7 @@ class MaskedArray(ndarray): """Return a flat iterator. """ - return FlatIter(self) + return MaskedIterator(self) # def _set_flat (self, value): """Set a flattened version of self to value. |