ArgMin and ArgMax
Functions ArgMin and ArgMax
These functions return the index coordinate where the minimum or maximum value in an array occurs.
ArgMin is new to Analytica 4.0.
Declaration
ArgMin( R : vector[I] ; I : ... optional IndexType ; position : optional boolean ) ArgMax( R : vector[I] ; I : ... optional IndexType ; position : optional boolean )
Single Index Usage
When ArgMin or ArgMax is used with a single index, as in the following usage
ArgMax( R:Car_prices, I:Car_type )
the value in index I is returned containing the extrema.
In the event of ties, the element occuring closest to the end of index I is returned.
Multiple Index Usage
(new to 4.0)
You can specify more than one index, e.g.
ArgMin( R:Cost, I:Mpg,Car_type )
in order to find the coordinate in a multi-D array containing the minimum or maximum value.
When more than one index is specified, these functions return a coordinate at which the smallest (ArgMin) or largest (ArgMax) value occurs. The coordinate is a 1-D array indexed by a local index having the name .Dim. The elements of the local index are the index names, and the value of the result is the element from that index.
Positional Usage
By default, ArgMax and ArgMin return the index element(s). A positional dual is provided, in which the index position (rather than index element) is returned. For example:
ArgMax( R : Profit, I : UnitPrice, position : true )
returns the 1-based position in I, rather than the actual price. If an index might contain duplicate values, it may be necessary to use positions rather than elements to avoid ambiguities.
Enable comment auto-refresher