npm package: @stdlib/ndarray-base
Description: Base ndarray.
Author: The Stdlib Authors
Latest version: 0.4.1

<!--

@license Apache-2.0

Copyright (c) 2018 The Stdlib Authors.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

-->


<details>
  <summary>
    About stdlib...
  </summary>
  <p>We believe in a future in which the web is a preferred environment for numerical computation. To help realize this future, we've built stdlib. stdlib is a standard library, with an emphasis on numerical and scientific computation, written in JavaScript (and C) for execution in browsers and in Node.js.</p>
  <p>The library is fully decomposable, being architected in such a way that you can swap out and mix and match APIs and functionality to cater to your exact preferences and use cases.</p>
  <p>When you use stdlib, you can be absolutely certain that you are using the most thorough, rigorous, well-written, studied, documented, tested, measured, and high-quality code out there.</p>
  <p>To join us in bringing numerical computing to the web, get started by checking us out on <a href="https://github.com/stdlib-js/stdlib">GitHub</a>, and please consider <a href="https://opencollective.com/stdlib">financially supporting stdlib</a>. We greatly appreciate your continued support!</p>
</details>

# Base

[![NPM version][npm-image]][npm-url] [![Build Status][test-image]][test-url] [![Coverage Status][coverage-image]][coverage-url] <!-- [![dependencies][dependencies-image]][dependencies-url] -->

> Base ndarray.

<section class="installation">

## Installation

```bash
npm install @stdlib/ndarray-base
```

</section>

<section class="usage">

## Usage

```javascript
var ns = require( '@stdlib/ndarray-base' );
```

#### ns

Base ndarray.

```javascript
var o = ns;
// returns {...}
```

<!-- <toc keywords="-assertion" > -->

<div class="namespace-toc">

-   <span class="signature">[`anyBy( arrays, predicate[, thisArg] )`][@stdlib/ndarray/base/any-by]</span><span class="delimiter">: </span><span class="description">test whether at least one element in an ndarray passes a test implemented by a predicate function.</span>
-   <span class="signature">[`any( arrays )`][@stdlib/ndarray/base/any]</span><span class="delimiter">: </span><span class="description">test whether at least one element in an ndarray is truthy.</span>
-   <span class="signature">[`assign( arrays )`][@stdlib/ndarray/base/assign]</span><span class="delimiter">: </span><span class="description">assign elements in an input ndarray to elements in an output ndarray.</span>
-   <span class="signature">[`binaryInputCastingDataType( idtype1, idtype2, odtype, policy )`][@stdlib/ndarray/base/binary-input-casting-dtype]</span><span class="delimiter">: </span><span class="description">resolve the casting data type for an input ndarray provided to a binary function.</span>
-   <span class="signature">[`binaryLoopOrder( shape, stridesX, stridesY, stridesZ )`][@stdlib/ndarray/base/binary-loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`binaryOutputDataType( xdtype, ydtype, policy )`][@stdlib/ndarray/base/binary-output-dtype]</span><span class="delimiter">: </span><span class="description">resolve the output ndarray data type for a binary function.</span>
-   <span class="signature">[`binaryReduceStrided1dDispatchFactory( table, idtypes, odtypes, policies )`][@stdlib/ndarray/base/binary-reduce-strided1d-dispatch-factory]</span><span class="delimiter">: </span><span class="description">create a function for performing reduction on two input ndarrays.</span>
-   <span class="signature">[`binaryReduceStrided1dDispatch( table, idtypes, odtypes, policies )`][@stdlib/ndarray/base/binary-reduce-strided1d-dispatch]</span><span class="delimiter">: </span><span class="description">constructor for performing a reduction on two input ndarrays.</span>
-   <span class="signature">[`binaryReduceStrided1d( fcn, arrays, dims[, options] )`][@stdlib/ndarray/base/binary-reduce-strided1d]</span><span class="delimiter">: </span><span class="description">perform a reduction over a list of specified dimensions in two input ndarrays via a one-dimensional strided array binary reduction function and assign results to a provided output ndarray.</span>
-   <span class="signature">[`binaryBlockSize( dtypeX, dtypeY, dtypeZ )`][@stdlib/ndarray/base/binary-tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`binary( arrays, fcn )`][@stdlib/ndarray/base/binary]</span><span class="delimiter">: </span><span class="description">apply a binary callback to elements in input ndarrays and assign results to elements in an output ndarray.</span>
-   <span class="signature">[`bind2vind( shape, strides, offset, order, idx, mode )`][@stdlib/ndarray/base/bind2vind]</span><span class="delimiter">: </span><span class="description">convert a linear index in an underlying data buffer to a linear index in an array view.</span>
-   <span class="signature">[`broadcastArrayExceptDimensions( arr, shape, dims )`][@stdlib/ndarray/base/broadcast-array-except-dimensions]</span><span class="delimiter">: </span><span class="description">broadcast an input ndarray to a target shape while keeping a list of specified dimensions unchanged.</span>
-   <span class="signature">[`broadcastArray( arr, shape )`][@stdlib/ndarray/base/broadcast-array]</span><span class="delimiter">: </span><span class="description">broadcast an ndarray to a specified shape.</span>
-   <span class="signature">[`broadcastArrays( arrays )`][@stdlib/ndarray/base/broadcast-arrays]</span><span class="delimiter">: </span><span class="description">broadcast ndarrays to a common shape.</span>
-   <span class="signature">[`broadcastScalarLike( x, value )`][@stdlib/ndarray/base/broadcast-scalar-like]</span><span class="delimiter">: </span><span class="description">broadcast a scalar value to an ndarray having the same shape and data type as a provided input ndarray.</span>
-   <span class="signature">[`broadcastScalar( value, dtype, shape, order )`][@stdlib/ndarray/base/broadcast-scalar]</span><span class="delimiter">: </span><span class="description">broadcast a scalar value to an ndarray having a specified shape.</span>
-   <span class="signature">[`broadcastShapes( shapes )`][@stdlib/ndarray/base/broadcast-shapes]</span><span class="delimiter">: </span><span class="description">broadcast array shapes to a single shape.</span>
-   <span class="signature">[`bufferCtors( dtype )`][@stdlib/ndarray/base/buffer-ctors]</span><span class="delimiter">: </span><span class="description">ndarray data buffer constructors.</span>
-   <span class="signature">[`bufferDataTypeEnum( buffer )`][@stdlib/ndarray/base/buffer-dtype-enum]</span><span class="delimiter">: </span><span class="description">return the data type enumeration constant of an ndarray data buffer.</span>
-   <span class="signature">[`bufferDataType( buffer )`][@stdlib/ndarray/base/buffer-dtype]</span><span class="delimiter">: </span><span class="description">return the data type of an ndarray data buffer.</span>
-   <span class="signature">[`buffer( dtype, size )`][@stdlib/ndarray/base/buffer]</span><span class="delimiter">: </span><span class="description">create a contiguous linear ndarray data buffer.</span>
-   <span class="signature">[`bytesPerElement( dtype )`][@stdlib/ndarray/base/bytes-per-element]</span><span class="delimiter">: </span><span class="description">return the number of bytes per element for a provided underlying ndarray data type.</span>
-   <span class="signature">[`char2dtype( [ch] )`][@stdlib/ndarray/base/char2dtype]</span><span class="delimiter">: </span><span class="description">return the data type string associated with a provided single letter character abbreviation.</span>
-   <span class="signature">[`clampIndex( idx, max )`][@stdlib/ndarray/base/clamp-index]</span><span class="delimiter">: </span><span class="description">restrict an index to the interval `[0,max]`.</span>
-   <span class="signature">[`complementShape( shape, dims )`][@stdlib/ndarray/base/complement-shape]</span><span class="delimiter">: </span><span class="description">return the shape defined by the dimensions which are not included in a list of dimensions.</span>
-   <span class="signature">[`copy( x )`][@stdlib/ndarray/base/copy]</span><span class="delimiter">: </span><span class="description">copy an input ndarray to a new ndarray having the same shape and data type.</span>
-   <span class="signature">[`countFalsy( arrays )`][@stdlib/ndarray/base/count-falsy]</span><span class="delimiter">: </span><span class="description">count the number of falsy elements in an ndarray.</span>
-   <span class="signature">[`countIf( arrays, predicate[, thisArg] )`][@stdlib/ndarray/base/count-if]</span><span class="delimiter">: </span><span class="description">count the number of elements in an ndarray which pass a test implemented by a predicate function.</span>
-   <span class="signature">[`countTruthy( arrays )`][@stdlib/ndarray/base/count-truthy]</span><span class="delimiter">: </span><span class="description">count the number of truthy elements in an ndarray.</span>
-   <span class="signature">[`ndarray( dtype, buffer, shape, strides, offset, order )`][@stdlib/ndarray/base/ctor]</span><span class="delimiter">: </span><span class="description">create a multidimensional array.</span>
-   <span class="signature">[`data( x )`][@stdlib/ndarray/base/data-buffer]</span><span class="delimiter">: </span><span class="description">return the underlying data buffer of a provided ndarray.</span>
-   <span class="signature">[`dtypeAlignment( [dtype] )`][@stdlib/ndarray/base/dtype-alignment]</span><span class="delimiter">: </span><span class="description">return the alignment (in bytes) for an underlying array data type.</span>
-   <span class="signature">[`dtypeChar( [dtype] )`][@stdlib/ndarray/base/dtype-char]</span><span class="delimiter">: </span><span class="description">return the single letter abbreviation for an underlying array data type.</span>
-   <span class="signature">[`dtypeChars( [kind] )`][@stdlib/ndarray/base/dtype-chars]</span><span class="delimiter">: </span><span class="description">list of ndarray data type single letter character abbreviations.</span>
-   <span class="signature">[`dtypeDesc( [dtype] )`][@stdlib/ndarray/base/dtype-desc]</span><span class="delimiter">: </span><span class="description">return the description for a specified data type.</span>
-   <span class="signature">[`dtypeEnum2Str( dtype )`][@stdlib/ndarray/base/dtype-enum2str]</span><span class="delimiter">: </span><span class="description">return the data type string associated with an ndarray data type enumeration constant.</span>
-   <span class="signature">[`dtypeEnums()`][@stdlib/ndarray/base/dtype-enums]</span><span class="delimiter">: </span><span class="description">return an object mapping supported data type strings to enumeration constants.</span>
-   <span class="signature">[`dtypeObjects()`][@stdlib/ndarray/base/dtype-objects]</span><span class="delimiter">: </span><span class="description">return an object mapping supported data type strings to data type objects.</span>
-   <span class="signature">[`dtypeResolveEnum( dtype )`][@stdlib/ndarray/base/dtype-resolve-enum]</span><span class="delimiter">: </span><span class="description">return the enumeration constant associated with a supported ndarray data type value.</span>
-   <span class="signature">[`dtypeResolveStr( dtype )`][@stdlib/ndarray/base/dtype-resolve-str]</span><span class="delimiter">: </span><span class="description">return the data type string associated with a supported ndarray data type value.</span>
-   <span class="signature">[`dtypeStr2Enum( dtype )`][@stdlib/ndarray/base/dtype-str2enum]</span><span class="delimiter">: </span><span class="description">return the enumeration constant associated with an ndarray data type string.</span>
-   <span class="signature">[`dtypeStrings( [kind] )`][@stdlib/ndarray/base/dtype-strings]</span><span class="delimiter">: </span><span class="description">list of ndarray data type strings.</span>
-   <span class="signature">[`dtype( x )`][@stdlib/ndarray/base/dtype]</span><span class="delimiter">: </span><span class="description">return the data type of a provided ndarray.</span>
-   <span class="signature">[`dtype2c( dtype )`][@stdlib/ndarray/base/dtype2c]</span><span class="delimiter">: </span><span class="description">return the C data type associated with a provided data type value.</span>
-   <span class="signature">[`dtypes2enums( dtypes )`][@stdlib/ndarray/base/dtypes2enums]</span><span class="delimiter">: </span><span class="description">resolve a list of data type enumeration constants.</span>
-   <span class="signature">[`dtypes2signatures( dtypes, nin, nout )`][@stdlib/ndarray/base/dtypes2signatures]</span><span class="delimiter">: </span><span class="description">transform a list of array argument data types into a list of signatures.</span>
-   <span class="signature">[`dtypes2strings( dtypes )`][@stdlib/ndarray/base/dtypes2strings]</span><span class="delimiter">: </span><span class="description">resolve a list of data type strings.</span>
-   <span class="signature">[`emptyLike( x )`][@stdlib/ndarray/base/empty-like]</span><span class="delimiter">: </span><span class="description">create an uninitialized ndarray having the same shape and data type as a provided ndarray.</span>
-   <span class="signature">[`empty( dtype, shape, order )`][@stdlib/ndarray/base/empty]</span><span class="delimiter">: </span><span class="description">create an uninitialized ndarray having a specified shape and data type.</span>
-   <span class="signature">[`everyBy( arrays, predicate[, thisArg] )`][@stdlib/ndarray/base/every-by]</span><span class="delimiter">: </span><span class="description">test whether all elements in an ndarray pass a test implemented by a predicate function.</span>
-   <span class="signature">[`every( arrays )`][@stdlib/ndarray/base/every]</span><span class="delimiter">: </span><span class="description">test whether every element in an ndarray is truthy.</span>
-   <span class="signature">[`expandDimensions( x, dim, writable )`][@stdlib/ndarray/base/expand-dimensions]</span><span class="delimiter">: </span><span class="description">expand the shape of an array by inserting a new dimension of size one at a specified dimension index.</span>
-   <span class="signature">[`fillBy( x, fcn[, thisArg] )`][@stdlib/ndarray/base/fill-by]</span><span class="delimiter">: </span><span class="description">fill an input ndarray according to a callback function.</span>
-   <span class="signature">[`fill( x, value )`][@stdlib/ndarray/base/fill]</span><span class="delimiter">: </span><span class="description">fill an input ndarray with a specified value.</span>
-   <span class="signature">[`find( arrays, predicate[, thisArg] )`][@stdlib/ndarray/base/find]</span><span class="delimiter">: </span><span class="description">return the first element in an ndarray which passes a test implemented by a predicate function.</span>
-   <span class="signature">[`flag( x, name )`][@stdlib/ndarray/base/flag]</span><span class="delimiter">: </span><span class="description">return a specified flag for a provided ndarray.</span>
-   <span class="signature">[`flags( x, copy )`][@stdlib/ndarray/base/flags]</span><span class="delimiter">: </span><span class="description">return the flags of a provided ndarray.</span>
-   <span class="signature">[`flattenShapeFrom( shape, dim )`][@stdlib/ndarray/base/flatten-shape-from]</span><span class="delimiter">: </span><span class="description">flatten a shape starting from a specified dimension.</span>
-   <span class="signature">[`flattenShape( shape, depth )`][@stdlib/ndarray/base/flatten-shape]</span><span class="delimiter">: </span><span class="description">flatten a shape to a specified depth.</span>
-   <span class="signature">[`fliplr( x, writable )`][@stdlib/ndarray/base/fliplr]</span><span class="delimiter">: </span><span class="description">return a view of an input ndarray in which the order of elements along the last dimension is reversed.</span>
-   <span class="signature">[`flipud( x, writable )`][@stdlib/ndarray/base/flipud]</span><span class="delimiter">: </span><span class="description">return a view of an input ndarray in which the order of elements along the second-to-last dimension is reversed.</span>
-   <span class="signature">[`forEach( arrays, fcn[, thisArg] )`][@stdlib/ndarray/base/for-each]</span><span class="delimiter">: </span><span class="description">invoke a callback function once for each element in an ndarray.</span>
-   <span class="signature">[`array2ndarray( buf, order )`][@stdlib/ndarray/base/from-array]</span><span class="delimiter">: </span><span class="description">convert an array to a one-dimensional ndarray.</span>
-   <span class="signature">[`scalar2ndarrayLike( x, value )`][@stdlib/ndarray/base/from-scalar-like]</span><span class="delimiter">: </span><span class="description">convert a scalar value to a zero-dimensional ndarray having the same data type as a provided ndarray.</span>
-   <span class="signature">[`scalar2ndarray( value, dtype, order )`][@stdlib/ndarray/base/from-scalar]</span><span class="delimiter">: </span><span class="description">convert a scalar value to a zero-dimensional ndarray.</span>
-   <span class="signature">[`includes( arrays )`][@stdlib/ndarray/base/includes]</span><span class="delimiter">: </span><span class="description">test whether an ndarray contains a specified value.</span>
-   <span class="signature">[`ind( idx, max, mode )`][@stdlib/ndarray/base/ind]</span><span class="delimiter">: </span><span class="description">return an index given an index mode.</span>
-   <span class="signature">[`ind2sub( shape, strides, offset, order, idx, mode )`][@stdlib/ndarray/base/ind2sub]</span><span class="delimiter">: </span><span class="description">convert a linear index to an array of subscripts.</span>
-   <span class="signature">[`iterationOrder( strides )`][@stdlib/ndarray/base/iteration-order]</span><span class="delimiter">: </span><span class="description">given a stride array, determine array iteration order.</span>
-   <span class="signature">[`loopOrder( shape, strides )`][@stdlib/ndarray/base/loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`map( arrays, fcn[, thisArg] )`][@stdlib/ndarray/base/map]</span><span class="delimiter">: </span><span class="description">apply a callback function to elements in an input ndarray and assign results to elements in an output ndarray.</span>
-   <span class="signature">[`maxViewBufferIndex( shape, strides, offset )`][@stdlib/ndarray/base/max-view-buffer-index]</span><span class="delimiter">: </span><span class="description">compute the maximum linear index in an underlying data buffer accessible to an array view.</span>
-   <span class="signature">[`maybeBroadcastArray( arr, shape )`][@stdlib/ndarray/base/maybe-broadcast-array]</span><span class="delimiter">: </span><span class="description">broadcast an ndarray to a specified shape if and only if the specified shape differs from the provided ndarray's shape.</span>
-   <span class="signature">[`maybeBroadcastArrays( arrays )`][@stdlib/ndarray/base/maybe-broadcast-arrays]</span><span class="delimiter">: </span><span class="description">broadcast ndarrays to a common shape.</span>
-   <span class="signature">[`metaDataProps( meta, dtypes, obj )`][@stdlib/ndarray/base/meta-data-props]</span><span class="delimiter">: </span><span class="description">define non-enumerable read-only properties which expose ndarray function meta data.</span>
-   <span class="signature">[`minSignedIntegerDataType( value )`][@stdlib/ndarray/base/min-signed-integer-dtype]</span><span class="delimiter">: </span><span class="description">determine the minimum ndarray data type for storing a provided signed integer value.</span>
-   <span class="signature">[`minUnsignedIntegerDataType( value )`][@stdlib/ndarray/base/min-unsigned-integer-dtype]</span><span class="delimiter">: </span><span class="description">determine the minimum ndarray data type for storing a provided unsigned integer value.</span>
-   <span class="signature">[`minViewBufferIndex( shape, strides, offset )`][@stdlib/ndarray/base/min-view-buffer-index]</span><span class="delimiter">: </span><span class="description">compute the minimum linear index in an underlying data buffer accessible to an array view.</span>
-   <span class="signature">[`minmaxViewBufferIndex( shape, strides, offset )`][@stdlib/ndarray/base/minmax-view-buffer-index]</span><span class="delimiter">: </span><span class="description">compute the minimum and maximum linear indices in an underlying data buffer which are accessible to an array view.</span>
-   <span class="signature">[`ndarraylike2ndarray( x )`][@stdlib/ndarray/base/ndarraylike2ndarray]</span><span class="delimiter">: </span><span class="description">convert an ndarray-like object to an `ndarray`.</span>
-   <span class="signature">[`ndarraylike2object( x )`][@stdlib/ndarray/base/ndarraylike2object]</span><span class="delimiter">: </span><span class="description">convert an `ndarray`-like object to an object likely to have the same "shape".</span>
-   <span class="signature">[`ndarraylike2scalar( x )`][@stdlib/ndarray/base/ndarraylike2scalar]</span><span class="delimiter">: </span><span class="description">convert an ndarray-like object to a scalar value.</span>
-   <span class="signature">[`ndims( x )`][@stdlib/ndarray/base/ndims]</span><span class="delimiter">: </span><span class="description">return the number of ndarray dimensions.</span>
-   <span class="signature">[`nextCartesianIndex( shape, order, idx, dim )`][@stdlib/ndarray/base/next-cartesian-index]</span><span class="delimiter">: </span><span class="description">return the next Cartesian index (i.e., set of subscripts/dimension indices).</span>
-   <span class="signature">[`nonsingletonDimensions( shape )`][@stdlib/ndarray/base/nonsingleton-dimensions]</span><span class="delimiter">: </span><span class="description">return the number of non-singleton dimensions.</span>
-   <span class="signature">[`normalizeIndex( idx, max )`][@stdlib/ndarray/base/normalize-index]</span><span class="delimiter">: </span><span class="description">normalize an index to the interval `[0,max]`.</span>
-   <span class="signature">[`normalizeIndices( indices, max )`][@stdlib/ndarray/base/normalize-indices]</span><span class="delimiter">: </span><span class="description">normalize a list of indices to the interval `[0,max]`.</span>
-   <span class="signature">[`nullaryLoopOrder( shape, stridesX )`][@stdlib/ndarray/base/nullary-loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`nullaryStrided1dDispatchFactory( table, idtypes, odtypes[, options] )`][@stdlib/ndarray/base/nullary-strided1d-dispatch-factory]</span><span class="delimiter">: </span><span class="description">create a function for applying a strided function to an ndarray.</span>
-   <span class="signature">[`nullaryStrided1dDispatch( table, idtypes, odtypes[, options] )`][@stdlib/ndarray/base/nullary-strided1d-dispatch]</span><span class="delimiter">: </span><span class="description">constructor for applying a strided function to an ndarray.</span>
-   <span class="signature">[`nullaryStrided1d( fcn, arrays, dims[, options] )`][@stdlib/ndarray/base/nullary-strided1d]</span><span class="delimiter">: </span><span class="description">apply a one-dimensional strided array function to a list of specified dimensions in an ndarray.</span>
-   <span class="signature">[`nullaryBlockSize( dtypeX )`][@stdlib/ndarray/base/nullary-tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`nullary( arrays, fcn )`][@stdlib/ndarray/base/nullary]</span><span class="delimiter">: </span><span class="description">apply a nullary callback and assign results to elements in an output ndarray.</span>
-   <span class="signature">[`numelDimension( x, dim )`][@stdlib/ndarray/base/numel-dimension]</span><span class="delimiter">: </span><span class="description">return the size (i.e., number of elements) of a specified dimension for a provided ndarray.</span>
-   <span class="signature">[`numel( shape )`][@stdlib/ndarray/base/numel]</span><span class="delimiter">: </span><span class="description">return the number of elements in an array.</span>
-   <span class="signature">[`offset( x )`][@stdlib/ndarray/base/offset]</span><span class="delimiter">: </span><span class="description">return the index offset specifying the underlying buffer index of the first iterated ndarray element.</span>
-   <span class="signature">[`order( x )`][@stdlib/ndarray/base/order]</span><span class="delimiter">: </span><span class="description">return the layout order of a provided ndarray.</span>
-   <span class="signature">[`outputDataType( dtypes, policy )`][@stdlib/ndarray/base/output-dtype]</span><span class="delimiter">: </span><span class="description">resolve the output ndarray data type from a list of input ndarray data types.</span>
-   <span class="signature">[`outputPolicyEnum2Str( policy )`][@stdlib/ndarray/base/output-policy-enum2str]</span><span class="delimiter">: </span><span class="description">return the policy string associated with an output ndarray data type policy enumeration constant.</span>
-   <span class="signature">[`outputPolicyResolveEnum( policy )`][@stdlib/ndarray/base/output-policy-resolve-enum]</span><span class="delimiter">: </span><span class="description">return the enumeration constant associated with a supported ndarray data type policy value.</span>
-   <span class="signature">[`outputPolicyResolveStr( dtype )`][@stdlib/ndarray/base/output-policy-resolve-str]</span><span class="delimiter">: </span><span class="description">return the policy string associated with a supported ndarray data type policy value.</span>
-   <span class="signature">[`outputPolicyStr2Enum( policy )`][@stdlib/ndarray/base/output-policy-str2enum]</span><span class="delimiter">: </span><span class="description">return the enumeration constant associated with an output ndarray data type policy string.</span>
-   <span class="signature">[`pop( x, dim, writable )`][@stdlib/ndarray/base/pop]</span><span class="delimiter">: </span><span class="description">return an array containing a truncated view of an input ndarray and a view of the last element(s) along a specified dimension.</span>
-   <span class="signature">[`prependSingletonDimensions( x, n, writable )`][@stdlib/ndarray/base/prepend-singleton-dimensions]</span><span class="delimiter">: </span><span class="description">prepend singleton dimensions.</span>
-   <span class="signature">[`promoteDataTypes( dtypes )`][@stdlib/ndarray/base/promote-dtypes]</span><span class="delimiter">: </span><span class="description">resolve the data type that results from applying promotion rules to a provided list of data types.</span>
-   <span class="signature">[`quaternaryLoopOrder( shape, stridesX, stridesY, stridesZ, stridesW, stridesU )`][@stdlib/ndarray/base/quaternary-loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`quaternaryBlockSize( dtypeX, dtypeY, dtypeZ, dtypeW, dtypeU )`][@stdlib/ndarray/base/quaternary-tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`quinaryLoopOrder( shape, stridesX, stridesY, stridesZ, stridesW, stridesU, stridesV )`][@stdlib/ndarray/base/quinary-loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`quinaryBlockSize( dtypeX, dtypeY, dtypeZ, dtypeW, dtypeU, dtypeV )`][@stdlib/ndarray/base/quinary-tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`removeSingletonDimensions( x )`][@stdlib/ndarray/base/remove-singleton-dimensions]</span><span class="delimiter">: </span><span class="description">remove singleton dimensions.</span>
-   <span class="signature">[`reverseDimension( x, dim, writable )`][@stdlib/ndarray/base/reverse-dimension]</span><span class="delimiter">: </span><span class="description">return a view of an input ndarray in which the order of elements along a specified dimension is reversed.</span>
-   <span class="signature">[`reverse( x, writable )`][@stdlib/ndarray/base/reverse]</span><span class="delimiter">: </span><span class="description">return a view of an input ndarray in which the order of elements along each dimension is reversed.</span>
-   <span class="signature">[`serializeMetaData( x )`][@stdlib/ndarray/base/serialize-meta-data]</span><span class="delimiter">: </span><span class="description">serialize ndarray meta data.</span>
-   <span class="signature">[`shape( x, copy )`][@stdlib/ndarray/base/shape]</span><span class="delimiter">: </span><span class="description">return the shape of a provided ndarray.</span>
-   <span class="signature">[`shape2strides( shape, order )`][@stdlib/ndarray/base/shape2strides]</span><span class="delimiter">: </span><span class="description">generate a stride array from an array shape.</span>
-   <span class="signature">[`shift( x, dim, writable )`][@stdlib/ndarray/base/shift]</span><span class="delimiter">: </span><span class="description">return an array containing a truncated view of an input ndarray and a view of the first element(s) along a specified dimension.</span>
-   <span class="signature">[`singletonDimensions( shape )`][@stdlib/ndarray/base/singleton-dimensions]</span><span class="delimiter">: </span><span class="description">return the number of singleton dimensions.</span>
-   <span class="signature">[`sliceAssign( x, y, slice, strict )`][@stdlib/ndarray/base/slice-assign]</span><span class="delimiter">: </span><span class="description">assign element values from a broadcasted input `ndarray` to corresponding elements in an output `ndarray` view.</span>
-   <span class="signature">[`sliceDimensionFrom( x, dim, start, strict, writable )`][@stdlib/ndarray/base/slice-dimension-from]</span><span class="delimiter">: </span><span class="description">return a shifted view of an input ndarray along a specified dimension.</span>
-   <span class="signature">[`sliceDimensionTo( x, dim, stop, strict, writable )`][@stdlib/ndarray/base/slice-dimension-to]</span><span class="delimiter">: </span><span class="description">return a truncated view of an input ndarray along a specified dimension.</span>
-   <span class="signature">[`sliceDimension( x, dim, slice, strict, writable )`][@stdlib/ndarray/base/slice-dimension]</span><span class="delimiter">: </span><span class="description">return a view of an input ndarray when sliced along a specified dimension.</span>
-   <span class="signature">[`sliceFrom( x, start, strict, writable )`][@stdlib/ndarray/base/slice-from]</span><span class="delimiter">: </span><span class="description">return a shifted view of an input ndarray.</span>
-   <span class="signature">[`sliceTo( x, stop, strict, writable )`][@stdlib/ndarray/base/slice-to]</span><span class="delimiter">: </span><span class="description">return a truncated view of an input ndarray.</span>
-   <span class="signature">[`slice( x, slice, strict, writable )`][@stdlib/ndarray/base/slice]</span><span class="delimiter">: </span><span class="description">return a view of an input ndarray.</span>
-   <span class="signature">[`someBy( arrays, predicate[, thisArg ] )`][@stdlib/ndarray/base/some-by]</span><span class="delimiter">: </span><span class="description">test whether at least `n` elements in an ndarray pass a test implemented by a predicate function.</span>
-   <span class="signature">[`some( arrays )`][@stdlib/ndarray/base/some]</span><span class="delimiter">: </span><span class="description">test whether at least `n` elements in an ndarray are truthy.</span>
-   <span class="signature">[`spreadDimensions( ndims, x, dims, writable )`][@stdlib/ndarray/base/spread-dimensions]</span><span class="delimiter">: </span><span class="description">expand the shape of an array to a specified dimensionality by spreading its dimensions to specified dimension indices and inserting dimensions of size one for the remaining dimensions.</span>
-   <span class="signature">[`stride( x, dim )`][@stdlib/ndarray/base/stride]</span><span class="delimiter">: </span><span class="description">return the stride along a specified dimension for a provided ndarray.</span>
-   <span class="signature">[`strides( x, copy )`][@stdlib/ndarray/base/strides]</span><span class="delimiter">: </span><span class="description">return the strides of a provided ndarray.</span>
-   <span class="signature">[`strides2offset( shape, strides )`][@stdlib/ndarray/base/strides2offset]</span><span class="delimiter">: </span><span class="description">determine the index offset which specifies the location of the first indexed value in a multidimensional array based on a stride array.</span>
-   <span class="signature">[`strides2order( strides )`][@stdlib/ndarray/base/strides2order]</span><span class="delimiter">: </span><span class="description">determine the order of a multidimensional array based on a provided stride array.</span>
-   <span class="signature">[`sub2ind( shape, strides, offset, ...subscripts, mode )`][@stdlib/ndarray/base/sub2ind]</span><span class="delimiter">: </span><span class="description">convert subscripts to a linear index.</span>
-   <span class="signature">[`ternaryLoopOrder( shape, stridesX, stridesY, stridesZ, stridesW )`][@stdlib/ndarray/base/ternary-loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`ternaryOutputDataType( xdtype, ydtype, zdtype, policy )`][@stdlib/ndarray/base/ternary-output-dtype]</span><span class="delimiter">: </span><span class="description">resolve the output ndarray data type for a ternary function.</span>
-   <span class="signature">[`ternaryBlockSize( dtypeX, dtypeY, dtypeZ, dtypeW )`][@stdlib/ndarray/base/ternary-tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`ternary( arrays, fcn )`][@stdlib/ndarray/base/ternary]</span><span class="delimiter">: </span><span class="description">apply a ternary callback to elements in input ndarrays and assign results to elements in an output ndarray.</span>
-   <span class="signature">[`blockSize( dtypes )`][@stdlib/ndarray/base/tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`ndarray2array( buffer, shape, strides, offset, order )`][@stdlib/ndarray/base/to-array]</span><span class="delimiter">: </span><span class="description">convert an ndarray buffer to a generic array.</span>
-   <span class="signature">[`toFlippedlr( x )`][@stdlib/ndarray/base/to-flippedlr]</span><span class="delimiter">: </span><span class="description">return a new ndarray where the order of elements along the last dimension of an input ndarray is reversed.</span>
-   <span class="signature">[`toFlippedud( x )`][@stdlib/ndarray/base/to-flippedud]</span><span class="delimiter">: </span><span class="description">return a new ndarray where the order of elements along the second-to-last dimension of an input ndarray is reversed.</span>
-   <span class="signature">[`toNormalizedIndices( indices, max )`][@stdlib/ndarray/base/to-normalized-indices]</span><span class="delimiter">: </span><span class="description">normalize a list of indices to the interval `[0,max]`.</span>
-   <span class="signature">[`toReversedDimension( x, dim )`][@stdlib/ndarray/base/to-reversed-dimension]</span><span class="delimiter">: </span><span class="description">return a new ndarray where the order of elements of an input ndarray along a specified dimension is reversed.</span>
-   <span class="signature">[`toReversed( x )`][@stdlib/ndarray/base/to-reversed]</span><span class="delimiter">: </span><span class="description">return a new ndarray where the order of elements of an input ndarray is reversed along each dimension.</span>
-   <span class="signature">[`toUniqueNormalizedIndices( indices, max )`][@stdlib/ndarray/base/to-unique-normalized-indices]</span><span class="delimiter">: </span><span class="description">return a list of unique indices after normalizing to the interval `[0,max]`.</span>
-   <span class="signature">[`transpose( x )`][@stdlib/ndarray/base/transpose]</span><span class="delimiter">: </span><span class="description">transpose a matrix (or a stack of matrices).</span>
-   <span class="signature">[`unaryAccumulate( arrays, initial, clbk )`][@stdlib/ndarray/base/unary-accumulate]</span><span class="delimiter">: </span><span class="description">perform a reduction over elements in an input ndarray.</span>
-   <span class="signature">[`unaryAddonDispatch( addon, fallback )`][@stdlib/ndarray/base/unary-addon-dispatch]</span><span class="delimiter">: </span><span class="description">dispatch to a native add-on applying a unary function to an input ndarray.</span>
-   <span class="signature">[`unaryBy( arrays, fcn, clbk[, thisArg] )`][@stdlib/ndarray/base/unary-by]</span><span class="delimiter">: </span><span class="description">apply a unary function to each element in an input ndarray according to a callback function and assign results to elements in an output ndarray.</span>
-   <span class="signature">[`unaryInputCastingDataType( idtype, odtype, policy )`][@stdlib/ndarray/base/unary-input-casting-dtype]</span><span class="delimiter">: </span><span class="description">resolve the input ndarray casting data type for a unary function.</span>
-   <span class="signature">[`unaryLoopOrder( shape, stridesX, stridesY )`][@stdlib/ndarray/base/unary-loop-interchange-order]</span><span class="delimiter">: </span><span class="description">reorder ndarray dimensions and associated strides for loop interchange.</span>
-   <span class="signature">[`unaryOutputDataType( dtype, policy )`][@stdlib/ndarray/base/unary-output-dtype]</span><span class="delimiter">: </span><span class="description">resolve the output ndarray data type for a unary function.</span>
-   <span class="signature">[`unaryReduceStrided1dAssignStruct( fcn, arrays, dims[, options] )`][@stdlib/ndarray/base/unary-reduce-strided1d-assign-struct]</span><span class="delimiter">: </span><span class="description">perform a reduction over a list of specified dimensions in an input ndarray via a one-dimensional strided array reduction function which accepts an output `struct` object and assign results to a provided output ndarray.</span>
-   <span class="signature">[`unaryReduceStrided1dBy( fcn, arrays, dims[, options], clbk[, thisArg] )`][@stdlib/ndarray/base/unary-reduce-strided1d-by]</span><span class="delimiter">: </span><span class="description">perform a reduction over a list of specified dimensions in an input ndarray via a one-dimensional strided array reduction function accepting a callback and assign results to a provided output ndarray.</span>
-   <span class="signature">[`unaryReduceStrided1dDispatchByFactory( table, idtypes, odtypes, policies )`][@stdlib/ndarray/base/unary-reduce-strided1d-dispatch-by-factory]</span><span class="delimiter">: </span><span class="description">create a function for performing a reduction on an input ndarray according to a callback function.</span>
-   <span class="signature">[`unaryReduceStrided1dDispatchBy( table, idtypes, odtypes, policies )`][@stdlib/ndarray/base/unary-reduce-strided1d-dispatch-by]</span><span class="delimiter">: </span><span class="description">constructor for performing a reduction on an input ndarray according to a callback function.</span>
-   <span class="signature">[`unaryReduceStrided1dDispatchFactory( table, idtypes, odtypes, policies )`][@stdlib/ndarray/base/unary-reduce-strided1d-dispatch-factory]</span><span class="delimiter">: </span><span class="description">create a function for performing a reduction on an input ndarray.</span>
-   <span class="signature">[`unaryReduceStrided1dDispatch( table, idtypes, odtypes, policies )`][@stdlib/ndarray/base/unary-reduce-strided1d-dispatch]</span><span class="delimiter">: </span><span class="description">constructor for performing a reduction on an input ndarray.</span>
-   <span class="signature">[`unaryReduceStrided1d( fcn, arrays, dims[, options] )`][@stdlib/ndarray/base/unary-reduce-strided1d]</span><span class="delimiter">: </span><span class="description">perform a reduction over a list of specified dimensions in an input ndarray via a one-dimensional strided array reduction function and assign results to a provided output ndarray.</span>
-   <span class="signature">[`unaryReduceSubarrayBy( fcn, arrays, dims[, options], clbk[, thisArg] )`][@stdlib/ndarray/base/unary-reduce-subarray-by]</span><span class="delimiter">: </span><span class="description">perform a reduction over a list of specified dimensions in an input ndarray according to a callback function and assign results to a provided output ndarray.</span>
-   <span class="signature">[`unaryReduceSubarray( fcn, arrays, dims[, options] )`][@stdlib/ndarray/base/unary-reduce-subarray]</span><span class="delimiter">: </span><span class="description">perform a reduction over a list of specified dimensions in an input ndarray and assign results to a provided output ndarray.</span>
-   <span class="signature">[`unaryStrided1dDispatchFactory( table, idtypes, odtypes, policies[, options] )`][@stdlib/ndarray/base/unary-strided1d-dispatch-factory]</span><span class="delimiter">: </span><span class="description">create a function for applying a strided function an input ndarray.</span>
-   <span class="signature">[`unaryStrided1dDispatch( table, idtypes, odtypes, policies[, options] )`][@stdlib/ndarray/base/unary-strided1d-dispatch]</span><span class="delimiter">: </span><span class="description">constructor for applying a strided function to an input ndarray.</span>
-   <span class="signature">[`unaryStrided1d( fcn, arrays, dims[, options] )`][@stdlib/ndarray/base/unary-strided1d]</span><span class="delimiter">: </span><span class="description">apply a one-dimensional strided array function to a list of specified dimensions in an input ndarray and assign results to a provided output ndarray.</span>
-   <span class="signature">[`unaryBlockSize( dtypeX, dtypeY )`][@stdlib/ndarray/base/unary-tiling-block-size]</span><span class="delimiter">: </span><span class="description">resolve a loop block size for multi-dimensional array tiled loops.</span>
-   <span class="signature">[`unary( arrays, fcn )`][@stdlib/ndarray/base/unary]</span><span class="delimiter">: </span><span class="description">apply a unary callback to elements in an input ndarray and assign results to elements in an output ndarray.</span>
-   <span class="signature">[`vind2bind( shape, strides, offset, order, idx, mode )`][@stdlib/ndarray/base/vind2bind]</span><span class="delimiter">: </span><span class="description">convert a linear index in an array view to a linear index in an underlying data buffer.</span>
-   <span class="signature">[`wrapIndex( idx, max )`][@stdlib/ndarray/base/wrap-index]</span><span class="delimiter">: </span><span class="description">wrap an index on the interval `[0,max]`.</span>
-   <span class="signature">[`zerosLike( x )`][@stdlib/ndarray/base/zeros-like]</span><span class="delimiter">: </span><span class="description">create a zero-filled ndarray having the same shape and data type as a provided ndarray.</span>
-   <span class="signature">[`zeros( dtype, shape, order )`][@stdlib/ndarray/base/zeros]</span><span class="delimiter">: </span><span class="description">create a zero-filled ndarray having a specified shape and data type.</span>
-   <span class="signature">[`zip2views1d( arrays, labels )`][@stdlib/ndarray/base/zip2views1d]</span><span class="delimiter">: </span><span class="description">zip one or more one-dimensional ndarrays to an array of composite views.</span>

</div>

<!-- </toc> -->

The namespace contains the following sub-namespaces:

<!-- <toc pattern="*"> -->

<div class="namespace-toc">

-   <span class="signature">[`assert`][@stdlib/ndarray/base/assert]</span><span class="delimiter">: </span><span class="description">base ndarray assertion utilities.</span>

</div>

<!-- </toc> -->

</section>

<!-- /.usage -->

<section class="examples">

## Examples

<!-- TODO: better examples -->

<!-- eslint no-undef: "error" -->

```javascript
var objectKeys = require( '@stdlib/utils-keys' );
var ns = require( '@stdlib/ndarray-base' );

console.log( objectKeys( ns ) );
```

</section>

<!-- /.examples -->

<!-- Section for related `stdlib` packages. Do not manually edit this section, as it is automatically populated. -->

<section class="related">

</section>

<!-- /.related -->

<!-- Section for all links. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->


<section class="main-repo" >

* * *

## Notice

This package is part of [stdlib][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][stdlib], see the main project [repository][stdlib].

#### Community

[![Chat][chat-image]][chat-url]

---

## License

See [LICENSE][stdlib-license].


## Copyright

Copyright &copy; 2016-2026. The Stdlib [Authors][stdlib-authors].

</section>

<!-- /.stdlib -->

<!-- Section for all links. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->

<section class="links">

[npm-image]: http://img.shields.io/npm/v/@stdlib/ndarray-base.svg
[npm-url]: https://npmjs.org/package/@stdlib/ndarray-base

[test-image]: https://github.com/stdlib-js/ndarray-base/actions/workflows/test.yml/badge.svg?branch=v0.4.1
[test-url]: https://github.com/stdlib-js/ndarray-base/actions/workflows/test.yml?query=branch:v0.4.1

[coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/ndarray-base/main.svg
[coverage-url]: https://codecov.io/github/stdlib-js/ndarray-base?branch=main

<!--

[dependencies-image]: https://img.shields.io/david/stdlib-js/ndarray-base.svg
[dependencies-url]: https://david-dm.org/stdlib-js/ndarray-base/main

-->

[chat-image]: https://img.shields.io/badge/zulip-join_chat-brightgreen.svg
[chat-url]: https://stdlib.zulipchat.com

[stdlib]: https://github.com/stdlib-js/stdlib

[stdlib-authors]: https://github.com/stdlib-js/stdlib/graphs/contributors

[umd]: https://github.com/umdjs/umd
[es-module]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules

[deno-url]: https://github.com/stdlib-js/ndarray-base/tree/deno
[deno-readme]: https://github.com/stdlib-js/ndarray-base/blob/deno/README.md
[umd-url]: https://github.com/stdlib-js/ndarray-base/tree/umd
[umd-readme]: https://github.com/stdlib-js/ndarray-base/blob/umd/README.md
[esm-url]: https://github.com/stdlib-js/ndarray-base/tree/esm
[esm-readme]: https://github.com/stdlib-js/ndarray-base/blob/esm/README.md
[branches-url]: https://github.com/stdlib-js/ndarray-base/blob/main/branches.md

[stdlib-license]: https://raw.githubusercontent.com/stdlib-js/ndarray-base/main/LICENSE

<!-- <toc-links> -->

[@stdlib/ndarray/base/assert]: https://www.npmjs.com/package/@stdlib/ndarray-base-assert

[@stdlib/ndarray/base/any-by]: https://www.npmjs.com/package/@stdlib/ndarray-base-any-by

[@stdlib/ndarray/base/any]: https://www.npmjs.com/package/@stdlib/ndarray-base-any

[@stdlib/ndarray/base/assign]: https://www.npmjs.com/package/@stdlib/ndarray-base-assign

[@stdlib/ndarray/base/binary-input-casting-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-input-casting-dtype

[@stdlib/ndarray/base/binary-loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-loop-interchange-order

[@stdlib/ndarray/base/binary-output-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-output-dtype

[@stdlib/ndarray/base/binary-reduce-strided1d-dispatch-factory]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-reduce-strided1d-dispatch-factory

[@stdlib/ndarray/base/binary-reduce-strided1d-dispatch]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-reduce-strided1d-dispatch

[@stdlib/ndarray/base/binary-reduce-strided1d]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-reduce-strided1d

[@stdlib/ndarray/base/binary-tiling-block-size]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary-tiling-block-size

[@stdlib/ndarray/base/binary]: https://www.npmjs.com/package/@stdlib/ndarray-base-binary

[@stdlib/ndarray/base/bind2vind]: https://www.npmjs.com/package/@stdlib/ndarray-base-bind2vind

[@stdlib/ndarray/base/broadcast-array-except-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-broadcast-array-except-dimensions

[@stdlib/ndarray/base/broadcast-array]: https://www.npmjs.com/package/@stdlib/ndarray-base-broadcast-array

[@stdlib/ndarray/base/broadcast-arrays]: https://www.npmjs.com/package/@stdlib/ndarray-base-broadcast-arrays

[@stdlib/ndarray/base/broadcast-scalar-like]: https://www.npmjs.com/package/@stdlib/ndarray-base-broadcast-scalar-like

[@stdlib/ndarray/base/broadcast-scalar]: https://www.npmjs.com/package/@stdlib/ndarray-base-broadcast-scalar

[@stdlib/ndarray/base/broadcast-shapes]: https://www.npmjs.com/package/@stdlib/ndarray-base-broadcast-shapes

[@stdlib/ndarray/base/buffer-ctors]: https://www.npmjs.com/package/@stdlib/ndarray-base-buffer-ctors

[@stdlib/ndarray/base/buffer-dtype-enum]: https://www.npmjs.com/package/@stdlib/ndarray-base-buffer-dtype-enum

[@stdlib/ndarray/base/buffer-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-buffer-dtype

[@stdlib/ndarray/base/buffer]: https://www.npmjs.com/package/@stdlib/ndarray-base-buffer

[@stdlib/ndarray/base/bytes-per-element]: https://www.npmjs.com/package/@stdlib/ndarray-base-bytes-per-element

[@stdlib/ndarray/base/char2dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-char2dtype

[@stdlib/ndarray/base/clamp-index]: https://www.npmjs.com/package/@stdlib/ndarray-base-clamp-index

[@stdlib/ndarray/base/complement-shape]: https://www.npmjs.com/package/@stdlib/ndarray-base-complement-shape

[@stdlib/ndarray/base/copy]: https://www.npmjs.com/package/@stdlib/ndarray-base-copy

[@stdlib/ndarray/base/count-falsy]: https://www.npmjs.com/package/@stdlib/ndarray-base-count-falsy

[@stdlib/ndarray/base/count-if]: https://www.npmjs.com/package/@stdlib/ndarray-base-count-if

[@stdlib/ndarray/base/count-truthy]: https://www.npmjs.com/package/@stdlib/ndarray-base-count-truthy

[@stdlib/ndarray/base/ctor]: https://www.npmjs.com/package/@stdlib/ndarray-base-ctor

[@stdlib/ndarray/base/data-buffer]: https://www.npmjs.com/package/@stdlib/ndarray-base-data-buffer

[@stdlib/ndarray/base/dtype-alignment]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-alignment

[@stdlib/ndarray/base/dtype-char]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-char

[@stdlib/ndarray/base/dtype-chars]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-chars

[@stdlib/ndarray/base/dtype-desc]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-desc

[@stdlib/ndarray/base/dtype-enum2str]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-enum2str

[@stdlib/ndarray/base/dtype-enums]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-enums

[@stdlib/ndarray/base/dtype-objects]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-objects

[@stdlib/ndarray/base/dtype-resolve-enum]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-resolve-enum

[@stdlib/ndarray/base/dtype-resolve-str]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-resolve-str

[@stdlib/ndarray/base/dtype-str2enum]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-str2enum

[@stdlib/ndarray/base/dtype-strings]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype-strings

[@stdlib/ndarray/base/dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype

[@stdlib/ndarray/base/dtype2c]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtype2c

[@stdlib/ndarray/base/dtypes2enums]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtypes2enums

[@stdlib/ndarray/base/dtypes2signatures]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtypes2signatures

[@stdlib/ndarray/base/dtypes2strings]: https://www.npmjs.com/package/@stdlib/ndarray-base-dtypes2strings

[@stdlib/ndarray/base/empty-like]: https://www.npmjs.com/package/@stdlib/ndarray-base-empty-like

[@stdlib/ndarray/base/empty]: https://www.npmjs.com/package/@stdlib/ndarray-base-empty

[@stdlib/ndarray/base/every-by]: https://www.npmjs.com/package/@stdlib/ndarray-base-every-by

[@stdlib/ndarray/base/every]: https://www.npmjs.com/package/@stdlib/ndarray-base-every

[@stdlib/ndarray/base/expand-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-expand-dimensions

[@stdlib/ndarray/base/fill-by]: https://www.npmjs.com/package/@stdlib/ndarray-base-fill-by

[@stdlib/ndarray/base/fill]: https://www.npmjs.com/package/@stdlib/ndarray-base-fill

[@stdlib/ndarray/base/find]: https://www.npmjs.com/package/@stdlib/ndarray-base-find

[@stdlib/ndarray/base/flag]: https://www.npmjs.com/package/@stdlib/ndarray-base-flag

[@stdlib/ndarray/base/flags]: https://www.npmjs.com/package/@stdlib/ndarray-base-flags

[@stdlib/ndarray/base/flatten-shape-from]: https://www.npmjs.com/package/@stdlib/ndarray-base-flatten-shape-from

[@stdlib/ndarray/base/flatten-shape]: https://www.npmjs.com/package/@stdlib/ndarray-base-flatten-shape

[@stdlib/ndarray/base/fliplr]: https://www.npmjs.com/package/@stdlib/ndarray-base-fliplr

[@stdlib/ndarray/base/flipud]: https://www.npmjs.com/package/@stdlib/ndarray-base-flipud

[@stdlib/ndarray/base/for-each]: https://www.npmjs.com/package/@stdlib/ndarray-base-for-each

[@stdlib/ndarray/base/from-array]: https://www.npmjs.com/package/@stdlib/ndarray-base-from-array

[@stdlib/ndarray/base/from-scalar-like]: https://www.npmjs.com/package/@stdlib/ndarray-base-from-scalar-like

[@stdlib/ndarray/base/from-scalar]: https://www.npmjs.com/package/@stdlib/ndarray-base-from-scalar

[@stdlib/ndarray/base/includes]: https://www.npmjs.com/package/@stdlib/ndarray-base-includes

[@stdlib/ndarray/base/ind]: https://www.npmjs.com/package/@stdlib/ndarray-base-ind

[@stdlib/ndarray/base/ind2sub]: https://www.npmjs.com/package/@stdlib/ndarray-base-ind2sub

[@stdlib/ndarray/base/iteration-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-iteration-order

[@stdlib/ndarray/base/loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-loop-interchange-order

[@stdlib/ndarray/base/map]: https://www.npmjs.com/package/@stdlib/ndarray-base-map

[@stdlib/ndarray/base/max-view-buffer-index]: https://www.npmjs.com/package/@stdlib/ndarray-base-max-view-buffer-index

[@stdlib/ndarray/base/maybe-broadcast-array]: https://www.npmjs.com/package/@stdlib/ndarray-base-maybe-broadcast-array

[@stdlib/ndarray/base/maybe-broadcast-arrays]: https://www.npmjs.com/package/@stdlib/ndarray-base-maybe-broadcast-arrays

[@stdlib/ndarray/base/meta-data-props]: https://www.npmjs.com/package/@stdlib/ndarray-base-meta-data-props

[@stdlib/ndarray/base/min-signed-integer-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-min-signed-integer-dtype

[@stdlib/ndarray/base/min-unsigned-integer-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-min-unsigned-integer-dtype

[@stdlib/ndarray/base/min-view-buffer-index]: https://www.npmjs.com/package/@stdlib/ndarray-base-min-view-buffer-index

[@stdlib/ndarray/base/minmax-view-buffer-index]: https://www.npmjs.com/package/@stdlib/ndarray-base-minmax-view-buffer-index

[@stdlib/ndarray/base/ndarraylike2ndarray]: https://www.npmjs.com/package/@stdlib/ndarray-base-ndarraylike2ndarray

[@stdlib/ndarray/base/ndarraylike2object]: https://www.npmjs.com/package/@stdlib/ndarray-base-ndarraylike2object

[@stdlib/ndarray/base/ndarraylike2scalar]: https://www.npmjs.com/package/@stdlib/ndarray-base-ndarraylike2scalar

[@stdlib/ndarray/base/ndims]: https://www.npmjs.com/package/@stdlib/ndarray-base-ndims

[@stdlib/ndarray/base/next-cartesian-index]: https://www.npmjs.com/package/@stdlib/ndarray-base-next-cartesian-index

[@stdlib/ndarray/base/nonsingleton-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-nonsingleton-dimensions

[@stdlib/ndarray/base/normalize-index]: https://www.npmjs.com/package/@stdlib/ndarray-base-normalize-index

[@stdlib/ndarray/base/normalize-indices]: https://www.npmjs.com/package/@stdlib/ndarray-base-normalize-indices

[@stdlib/ndarray/base/nullary-loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-nullary-loop-interchange-order

[@stdlib/ndarray/base/nullary-strided1d-dispatch-factory]: https://www.npmjs.com/package/@stdlib/ndarray-base-nullary-strided1d-dispatch-factory

[@stdlib/ndarray/base/nullary-strided1d-dispatch]: https://www.npmjs.com/package/@stdlib/ndarray-base-nullary-strided1d-dispatch

[@stdlib/ndarray/base/nullary-strided1d]: https://www.npmjs.com/package/@stdlib/ndarray-base-nullary-strided1d

[@stdlib/ndarray/base/nullary-tiling-block-size]: https://www.npmjs.com/package/@stdlib/ndarray-base-nullary-tiling-block-size

[@stdlib/ndarray/base/nullary]: https://www.npmjs.com/package/@stdlib/ndarray-base-nullary

[@stdlib/ndarray/base/numel-dimension]: https://www.npmjs.com/package/@stdlib/ndarray-base-numel-dimension

[@stdlib/ndarray/base/numel]: https://www.npmjs.com/package/@stdlib/ndarray-base-numel

[@stdlib/ndarray/base/offset]: https://www.npmjs.com/package/@stdlib/ndarray-base-offset

[@stdlib/ndarray/base/order]: https://www.npmjs.com/package/@stdlib/ndarray-base-order

[@stdlib/ndarray/base/output-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-output-dtype

[@stdlib/ndarray/base/output-policy-enum2str]: https://www.npmjs.com/package/@stdlib/ndarray-base-output-policy-enum2str

[@stdlib/ndarray/base/output-policy-resolve-enum]: https://www.npmjs.com/package/@stdlib/ndarray-base-output-policy-resolve-enum

[@stdlib/ndarray/base/output-policy-resolve-str]: https://www.npmjs.com/package/@stdlib/ndarray-base-output-policy-resolve-str

[@stdlib/ndarray/base/output-policy-str2enum]: https://www.npmjs.com/package/@stdlib/ndarray-base-output-policy-str2enum

[@stdlib/ndarray/base/pop]: https://www.npmjs.com/package/@stdlib/ndarray-base-pop

[@stdlib/ndarray/base/prepend-singleton-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-prepend-singleton-dimensions

[@stdlib/ndarray/base/promote-dtypes]: https://www.npmjs.com/package/@stdlib/ndarray-base-promote-dtypes

[@stdlib/ndarray/base/quaternary-loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-quaternary-loop-interchange-order

[@stdlib/ndarray/base/quaternary-tiling-block-size]: https://www.npmjs.com/package/@stdlib/ndarray-base-quaternary-tiling-block-size

[@stdlib/ndarray/base/quinary-loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-quinary-loop-interchange-order

[@stdlib/ndarray/base/quinary-tiling-block-size]: https://www.npmjs.com/package/@stdlib/ndarray-base-quinary-tiling-block-size

[@stdlib/ndarray/base/remove-singleton-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-remove-singleton-dimensions

[@stdlib/ndarray/base/reverse-dimension]: https://www.npmjs.com/package/@stdlib/ndarray-base-reverse-dimension

[@stdlib/ndarray/base/reverse]: https://www.npmjs.com/package/@stdlib/ndarray-base-reverse

[@stdlib/ndarray/base/serialize-meta-data]: https://www.npmjs.com/package/@stdlib/ndarray-base-serialize-meta-data

[@stdlib/ndarray/base/shape]: https://www.npmjs.com/package/@stdlib/ndarray-base-shape

[@stdlib/ndarray/base/shape2strides]: https://www.npmjs.com/package/@stdlib/ndarray-base-shape2strides

[@stdlib/ndarray/base/shift]: https://www.npmjs.com/package/@stdlib/ndarray-base-shift

[@stdlib/ndarray/base/singleton-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-singleton-dimensions

[@stdlib/ndarray/base/slice-assign]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice-assign

[@stdlib/ndarray/base/slice-dimension-from]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice-dimension-from

[@stdlib/ndarray/base/slice-dimension-to]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice-dimension-to

[@stdlib/ndarray/base/slice-dimension]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice-dimension

[@stdlib/ndarray/base/slice-from]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice-from

[@stdlib/ndarray/base/slice-to]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice-to

[@stdlib/ndarray/base/slice]: https://www.npmjs.com/package/@stdlib/ndarray-base-slice

[@stdlib/ndarray/base/some-by]: https://www.npmjs.com/package/@stdlib/ndarray-base-some-by

[@stdlib/ndarray/base/some]: https://www.npmjs.com/package/@stdlib/ndarray-base-some

[@stdlib/ndarray/base/spread-dimensions]: https://www.npmjs.com/package/@stdlib/ndarray-base-spread-dimensions

[@stdlib/ndarray/base/stride]: https://www.npmjs.com/package/@stdlib/ndarray-base-stride

[@stdlib/ndarray/base/strides]: https://www.npmjs.com/package/@stdlib/ndarray-base-strides

[@stdlib/ndarray/base/strides2offset]: https://www.npmjs.com/package/@stdlib/ndarray-base-strides2offset

[@stdlib/ndarray/base/strides2order]: https://www.npmjs.com/package/@stdlib/ndarray-base-strides2order

[@stdlib/ndarray/base/sub2ind]: https://www.npmjs.com/package/@stdlib/ndarray-base-sub2ind

[@stdlib/ndarray/base/ternary-loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-ternary-loop-interchange-order

[@stdlib/ndarray/base/ternary-output-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-ternary-output-dtype

[@stdlib/ndarray/base/ternary-tiling-block-size]: https://www.npmjs.com/package/@stdlib/ndarray-base-ternary-tiling-block-size

[@stdlib/ndarray/base/ternary]: https://www.npmjs.com/package/@stdlib/ndarray-base-ternary

[@stdlib/ndarray/base/tiling-block-size]: https://www.npmjs.com/package/@stdlib/ndarray-base-tiling-block-size

[@stdlib/ndarray/base/to-array]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-array

[@stdlib/ndarray/base/to-flippedlr]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-flippedlr

[@stdlib/ndarray/base/to-flippedud]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-flippedud

[@stdlib/ndarray/base/to-normalized-indices]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-normalized-indices

[@stdlib/ndarray/base/to-reversed-dimension]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-reversed-dimension

[@stdlib/ndarray/base/to-reversed]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-reversed

[@stdlib/ndarray/base/to-unique-normalized-indices]: https://www.npmjs.com/package/@stdlib/ndarray-base-to-unique-normalized-indices

[@stdlib/ndarray/base/transpose]: https://www.npmjs.com/package/@stdlib/ndarray-base-transpose

[@stdlib/ndarray/base/unary-accumulate]: https://www.npmjs.com/package/@stdlib/ndarray-base-unary-accumulate

[@stdlib/ndarray/base/unary-addon-dispatch]: https://www.npmjs.com/package/@stdlib/ndarray-base-unary-addon-dispatch

[@stdlib/ndarray/base/unary-by]: https://www.npmjs.com/package/@stdlib/ndarray-base-unary-by

[@stdlib/ndarray/base/unary-input-casting-dtype]: https://www.npmjs.com/package/@stdlib/ndarray-base-unary-input-casting-dtype

[@stdlib/ndarray/base/unary-loop-interchange-order]: https://www.npmjs.com/package/@stdlib/ndarray-base-unary-loop-interchange-order

[@stdlib/ndarray/base/unary-output-dtype]: htt