On 7/14/07, Robert Kern <[EMAIL PROTECTED]> wrote: > Sebastian Haase wrote: > > Hi. > > Two things. > > 1) The doc-string of numpy.where() states that transpose(where(cond, > > x,y)) whould always return a 2d-array. How can this be true?? It also > > says (before) that if x,y are given where(cond,x,y) always returns an > > array of the same shape as cond .... > > It is wrong. It actually meant > > transpose(where(condition)) > > > 2) Could we have another optional argument "dtype" in numpy.where()? > > Otherwise I would have to always write code like this: > > a = N.where( arr>x, 1.0, 0.0) > > a = a.astype(N.float32) > > a = N.where(arr > x, N.float32(1), N.float32(0))
If the x,y arguments are not scalars but (large) arrays this would need lots of unneccessary temporary memory (peak of 3 times the needed output memory size). I would wish that this function, and others which generate output arrays, all get an addition optional dtype argument. (Just like the functions in nd-image) Comments? Thanks for your quick reply, Robert, as always. -Sebastian _______________________________________________ Numpy-discussion mailing list [email protected] http://projects.scipy.org/mailman/listinfo/numpy-discussion
