toUniqueNormalizedIndices
Return a list of unique indices after normalizing to the interval
[0,max]
.
Usage
var toUniqueNormalizedIndices = require( '@stdlib/ndarray/base/to-unique-normalized-indices' );
toUniqueNormalizedIndices( indices, max )
Returns a list of unique indices after normalizing to the interval [0,max]
.
var idx = toUniqueNormalizedIndices( [ 2, -5 ], 10 );
// returns [ 2, 6 ]
If provided an out-of-bounds index, the function returns null
.
var idx = toUniqueNormalizedIndices( [ 15, -15 ], 10 );
// returns null
Notes
- During normalization, a negative index is converted to a nonnegative index according to
max + idx + 1
. If, after normalization, the resolved index is still negative, the value is considered out-of-bounds. - When provided valid indices, the function always returns a "generic" array.
- The function preserves provided index order.
Examples
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var toUniqueNormalizedIndices = require( '@stdlib/ndarray/base/to-unique-normalized-indices' );
// Generate a list of random indices:
var idx = discreteUniform( 100, -15, 15, {
'dtype': 'generic'
});
console.log( idx );
// Generate a list of unique indices normalized to the interval `[0, 15]`:
var out = toUniqueNormalizedIndices( idx, 15 );
console.log( out );