take
Take elements from an array.
Usage
var take = require( '@stdlib/array/take' );
take( x, indices[, options] )
Takes elements from an array.
var x = [ 1, 2, 3, 4 ];
var y = take( x, [ 1, 3 ] );
// returns [ 2, 4 ]
The function supports the following parameters:
- x: input array.
- indices: list of indices.
- options: function options.
The function supports the following options:
- mode: index mode. Default:
'normalize'
.
By default, the function normalizes negative integer indices to positive integer index equivalents.
var x = [ 1, 2, 3, 4 ];
var y = take( x, [ -3, -1 ] );
// returns [ 2, 4 ]
To specify an alternative index mode, provide a mode
option.
var x = [ 1, 2, 3, 4 ];
var y = take( x, [ -10, 10 ], {
'mode': 'clamp'
});
// returns [ 1, 4 ]
Notes
If
indices
is an empty array, the function returns an empty array.var x = [ 1, 2, 3, 4 ]; var y = take( x, [] ); // returns []
If provided an input array having a recognized data type, the function returns an array having the same data type as the input array. Otherwise, the function always returns a "generic" array.
Examples
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var linspace = require( '@stdlib/array/linspace' );
var take = require( '@stdlib/array/take' );
// Generate a linearly spaced array:
var x = linspace( 0, 100, 11 );
console.log( x );
// Generate an array of random indices:
var indices = discreteUniform( 10, 0, x.length-1 );
console.log( indices );
// Take a random sample of elements from `x`:
var y = take( x, indices );
console.log( y );