mskfilter

Apply a mask to a provided input array.

Usage

var mskfilter = require( '@stdlib/array/mskfilter' );

mskfilter( x, mask )

Returns a new array by applying a mask to a provided input array.

var x = [ 1, 2, 3, 4 ];

var y = mskfilter( x, [ 0, 1, 0, 1 ] );
// returns [ 2, 4 ]

The function supports the following parameters:

  • x: input array.
  • mask: mask array.

Notes

  • If a mask array element is truthy, the corresponding element in x is included in the output array; otherwise, the corresponding element in x is "masked" and thus excluded from the output array.
  • 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 zeroTo = require( '@stdlib/array/zero-to' );
var bernoulli = require( '@stdlib/random/array/bernoulli' );
var mskfilter = require( '@stdlib/array/mskfilter' );

// Generate a linearly spaced array:
var x = zeroTo( 20, 'generic' );
console.log( x );

// Generate a random mask:
var mask = bernoulli( x.length, 0.5, {
    'dtype': 'generic'
});
console.log( mask );

// Filter an array using the mask:
var y = mskfilter( x, mask );
console.log( y );
Did you find this page helpful?