From: Michael H. <mh...@al...> - 2001-05-11 18:00:05
|
Paul F. Dubois writes: > def compress (condition, x, dimension=-1): > """Select those parts of x for which condition is true. > Masked values in condition are considered false. > """ > c = filled(condition, 0) > m = getmask(x) > if m is not None: > m=Numeric.compress(c, m, dimension) > d = Numeric.compress(c, filled(x), dimension) > return masked_array(d, m) > > > I did want a treatment of masked conditions. Consider: > > compress( x > 10, x) I see your point, but this doesn't generalize to x having more than one dimension. And with my semantics, for your example (assuming 1-d), you could substitute compress((x > 10).filled(0), x) which isn't very obscure. Moreover, sometimes it is interesting to compress an array in such a way that masked values are carried along as masked values; this cannot be done with the existing compress(). Michael -- Michael Haggerty mh...@al... |