scalar2ndarray

Convert a scalar value to a zero-dimensional ndarray.

Usage

var scalar2ndarray = require( '@stdlib/ndarray/from-scalar' );

scalar2ndarray( value[, options] )

Returns a zero-dimensional ndarray containing a provided scalar value.

var x = scalar2ndarray( 1.0 );
// returns <ndarray>

var sh = x.shape;
// returns []

var dt = x.dtype;
// returns 'float64'

var v = x.get();
// returns 1.0

The function accepts the following options:

  • dtype: output array data type.
  • order: array order (i.e., memory layout), which is either row-major (C-style) or column-major (Fortran-style). Default: 'row-major'.
  • readonly: boolean indicating whether an array should be read-only. Default: false.

If a dtype option is not provided and value

  • is a number, the default data type is the default real-valued floating-point data type.
  • is a boolean, the default data type is the default boolean data type.
  • is a complex number object of a known data type, the data type is the same as the provided value.
  • is a complex number object of an unknown data type, the default data type is the default complex-valued floating-point data type.
  • is any other value type, the default data type is 'generic'.

To explicitly specify the data type of the returned ndarray, provide a dtype option.

var x = scalar2ndarray( 1.0, {
    'dtype': 'float32'
});
// returns <ndarray>

var sh = x.shape;
// returns []

var dt = x.dtype;
// returns 'float32'

var v = x.get();
// returns 1.0

Notes

  • If value is a number and options.dtype is a complex data type, the function returns a zero-dimensional ndarray containing a complex number whose real component equals the provided scalar value and whose imaginary component is zero.
  • The function does not guard against precision loss when value is a number and the dtype argument is an integer data type.

Examples

var dtypes = require( '@stdlib/ndarray/dtypes' );
var scalar2ndarray = require( '@stdlib/ndarray/from-scalar' );

// Get a list of data types:
var dt = dtypes();

// Generate zero-dimensional arrays...
var x;
var i;
for ( i = 0; i < dt.length; i++ ) {
    x = scalar2ndarray( i, {
        'dtype': dt[ i ]
    });
    console.log( x.get() );
}
Did you find this page helpful?