emptyLike
Create an uninitialized ndarray having the same shape and data type as a provided ndarray.
Usage
var emptyLike = require( '@stdlib/ndarray/base/empty-like' );
emptyLike( x )
Creates an uninitialized ndarray having the same shape and data type as a provided ndarray.
var zeros = require( '@stdlib/ndarray/base/zeros' );
var x = zeros( 'float64', [ 2, 2 ], 'row-major' );
// returns <ndarray>
var y = emptyLike( x );
// returns <ndarray>
var sh = y.shape;
// returns [ 2, 2 ]
Notes
- Along with data type, shape, and order, the function infers the "class" of the returned ndarray from the provided ndarray. For example, if provided a "base" ndarray, the function returns a base ndarray. If provided a non-base ndarray, the function returns a non-base ndarray.
- If the inferred output ndarray data type is
'generic'
, the function always returns a zero-filled ndarray. - For returned ndarrays whose underlying memory is not initialized, memory contents are unknown and may contain sensitive data.
Examples
var dtypes = require( '@stdlib/ndarray/dtypes' );
var empty = require( '@stdlib/ndarray/base/empty' );
var emptyLike = require( '@stdlib/ndarray/base/empty-like' );
// Get a list of data types:
var dt = dtypes();
// Generate uninitialized arrays...
var x;
var y;
var i;
for ( i = 0; i < dt.length; i++ ) {
x = empty( dt[ i ], [ 2, 2 ], 'row-major' );
y = emptyLike( x );
console.log( y.data );
}