Skip to content

Files

Latest commit

Sep 21, 2024
bdb0476 · Sep 21, 2024

History

History

zero-to-like

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jan 19, 2024
Sep 21, 2024
Jan 19, 2024
Jan 19, 2024
Jan 19, 2024
Jan 19, 2024
Jan 19, 2024

README.md

zeroToLike

Generate a linearly spaced numeric array whose elements increment by 1 starting from zero and having the same length and data type as a provided input array.

Usage

var zeroToLike = require( '@stdlib/array/zero-to-like' );

zeroToLike( x[, dtype] )

Generates a linearly spaced numeric array whose elements increment by 1 starting from zero and having the same length and data type as a provided input array x.

var arr = zeroToLike( [ 0, 0, 0, 0, 0 ] );
// returns [ 0, 1, 2, 3, 4 ]

The function recognizes the following data types:

  • float64: double-precision floating-point numbers (IEEE 754)
  • float32: single-precision floating-point numbers (IEEE 754)
  • complex128: double-precision complex floating-point numbers
  • complex64: single-precision complex floating-point numbers
  • int32: 32-bit two's complement signed integers
  • uint32: 32-bit unsigned integers
  • int16: 16-bit two's complement signed integers
  • uint16: 16-bit unsigned integers
  • int8: 8-bit two's complement signed integers
  • uint8: 8-bit unsigned integers
  • uint8c: 8-bit unsigned integers clamped to 0-255
  • generic: generic JavaScript values

By default, the output array data type is inferred from the provided array x. To return an array having a different data type, provide a dtype argument.

var arr = zeroToLike( [ 0, 0, 0, 0, 0 ], 'int32' );
// returns <Int32Array>[ 0, 1, 2, 3, 4 ]

Notes

  • For complex number arrays, each element of the returned array has an imaginary component equal to 0.

Examples

var sort2hp = require( '@stdlib/blas/ext/base/gsort2hp' );
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var zeroToLike = require( '@stdlib/array/zero-to-like' );

// Generate an array of random numbers:
var opts = {
    'dtype': 'generic'
};
var x = discreteUniform( 10, 100, 200, opts );

// Generate an array of indices:
var idx = zeroToLike( x );

// Create a temporary array to avoid mutation:
var tmp = x.slice();

// Sort the index array according to the sort order of `x`:
sort2hp( x.length, 1, tmp, 1, idx, 1 );

console.log( x );
console.log( idx );

See Also

  • @stdlib/array/empty-like: create an uninitialized array having the same length and data type as a provided array.
  • @stdlib/array/full-like: create a filled array having the same length and data type as a provided array.
  • @stdlib/array/nans-like: create an array filled with NaNs and having the same length and data type as a provided array.
  • @stdlib/array/one-to-like: generate a linearly spaced numeric array whose elements increment by 1 starting from one and having the same length and data type as a provided input array.
  • @stdlib/array/ones-like: create an array filled with ones and having the same length and data type as a provided array.
  • @stdlib/array/zero-to: generate a linearly spaced numeric array whose elements increment by 1 starting from zero.
  • @stdlib/array/zeros-like: create a zero-filled array having the same length and data type as a provided array.