take
Take elements from an array.
Usage
var take = require( '@stdlib/array/base/take' );
take( x, indices, mode )
Takes elements from an array.
var x = [ 1, 2, 3, 4 ];
var y = take( x, [ 1, 3 ], 'throw' );
// returns [ 2, 4 ]
The function supports the following parameters:
- x: input array.
- indices: list of indices.
- mode: index mode.
If indices
is an empty array, the function returns an empty array.
var x = [ 1, 2, 3, 4 ];
var y = take( x, [], 'throw' );
// returns []
take.assign( x, indices, mode, out, stride, offset )
Takes elements from an array and assigns the values to elements in a provided output array.
var x = [ 1, 2, 3, 4 ];
var out = [ 0, 0, 0, 0, 0, 0 ];
var indices = [ 0, 0, 1, 1, 3, 3 ];
var arr = take.assign( x, indices, 'throw', out, -1, out.length-1 );
// returns [ 4, 4, 2, 2, 1, 1 ]
var bool = ( arr === out );
// returns true
The function supports the following parameters:
- x: input array.
- indices: list of indices.
- mode: index mode.
- out: output array.
- stride: output array stride.
- offset: output array offset.
Examples
var filledBy = require( '@stdlib/array/base/filled-by' );
var discreteUniform = require( '@stdlib/random/base/discrete-uniform' );
var linspace = require( '@stdlib/array/base/linspace' );
var take = require( '@stdlib/array/base/take' );
// Generate a linearly spaced array:
var x = linspace( 0, 100, 11 );
console.log( x );
// Generate an array of random indices:
var N = discreteUniform( 5, 15 );
var indices = filledBy( N, discreteUniform.factory( 0, x.length-1 ) );
console.log( indices );
// Take a random sample of elements from `x`:
var y = take( x, indices, 'throw' );
console.log( y );