@stdlib/ndarray-spread-dimensions
v0.1.1
Published
Return a read-only view of an input ndarray where the dimensions of the input ndarray are expanded to a specified dimensionality by spreading dimensions to specified dimension indices and inserting dimensions of size one for the remaining dimensions.
Downloads
155
Readme
spreadDimensions
Return a read-only view of an input ndarray where the dimensions of the input ndarray are expanded to a specified dimensionality by spreading dimensions to specified dimension indices and inserting dimensions of size one for the remaining dimensions.
Installation
npm install @stdlib/ndarray-spread-dimensionsUsage
var spreadDimensions = require( '@stdlib/ndarray-spread-dimensions' );spreadDimensions( ndims, x, dims )
Returns a read-only view of an input ndarray where the dimensions of the input ndarray are expanded to a specified dimensionality by spreading dimensions to specified dimension indices and inserting dimensions of size one for the remaining dimensions.
var ndarray2array = require( '@stdlib/ndarray-to-array' );
var array = require( '@stdlib/ndarray-array' );
// Create a 2x2 ndarray:
var x = array( [ [ 1, 2 ], [ 3, 4 ] ] );
// returns <ndarray>[ [ 1, 2 ], [ 3, 4 ] ]
// Prepend a singleton dimension:
var y = spreadDimensions( 3, x, [ 1, 2 ] );
// returns <ndarray>[ [ [ 1, 2 ], [ 3, 4 ] ] ]
// Append a singleton dimension:
y = spreadDimensions( 3, x, [ 0, 1 ] );
// returns <ndarray>[ [ [ 1 ], [ 2 ] ], [ [ 3 ], [ 4 ] ] ]
// Insert a singleton dimension:
y = spreadDimensions( 3, x, [ 0, 2 ] );
// returns <ndarray>[ [ [ 1, 2 ] ], [ [ 3, 4 ] ] ]The function accepts the following arguments:
- ndims: number of dimensions in the output ndarray. Must be greater than or equal to the number of dimensions in the input ndarray.
- x: input ndarray.
- dims: dimension indices specifying where to place the dimensions of the input ndarray. Must resolve to normalized indices arranged in ascending order.
Examples
var uniform = require( '@stdlib/random-uniform' );
var ndarray2array = require( '@stdlib/ndarray-to-array' );
var spreadDimensions = require( '@stdlib/ndarray-spread-dimensions' );
var x = uniform( [ 3, 3, 3 ], -10.0, 10.0 );
console.log( ndarray2array( x ) );
var y = spreadDimensions( 5, x, [ 0, 1, 2 ] );
console.log( ndarray2array( y ) );Notice
This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.
For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.
Community
License
See LICENSE.
Copyright
Copyright © 2016-2026. The Stdlib Authors.
