[SciPy-Dev] extended functionality of max/min ufuncs
Sat Sep 8 12:12:41 CDT 2012
On Thu, Aug 23, 2012 at 4:28 PM, Tom Grydeland <email@example.com>wrote:
> Hi all,
> I'm working on a system to translate (EXELIS/ITTVIS/RSI) IDL to
> Python/Numpy. The results are close to usable for many purposes, but
> some simple constructs are causing snags I was hoping you could help
> me with.
> IDL's MAX function supports a second (output) argument which will
> contain the index of the maximum value. One can write
> PRINT, MAX(x, id), id
> to get the value and index of the maximum element. In Numpy, I could do
> id = np.argmax(x); print x[id], id
> to get the same results in two statements. However, I can give MAX an
> extra keyword /NAN to tell it to ignore NaN and infinities. In Numpy,
> I have np.nanmax, but no np.nanargmax.
> In addition, MAX has the output keywords MIN=value and
> SUBSCRIPT_MIN=index to return the minimum value and its index from the
> same function call. Similarly, MIN has output keywords MAX=value and
> SUBSCRIPT_MAX=index, so I can get max/min values and their indices
> (ignoring NaNs) in a single call -- in Numpy I would need two calls,
> two indexing operations, one temporary array of values and one of
> Would it be hard to add similar functionality to Numpy's min() and
> max() functions? Is it desirable?
You may get more responses on the numpy mailing list. I think adding
nanargmin/nanargmax is fine, and shouldn't be hard. Putting min/argmin
keywords into max and vice versa looks weird to me.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the SciPy-Dev