creates a numeric array of the specified type.
uses method to convert numbers into type.
Details and Options
- NumericArray provides the most compact representation of array to reduce memory usage and enhance speed of execution.
- The input array can be a full list of any depth containing machine‐sized integers and machine‐sized approximate real and complex numbers.
- Possible settings for type include:
"Integer8" signed 8-bit integers from through 127 "UnsignedInteger8" integers 0 through 255 "Integer16" signed 16-bit integers from through "UnsignedInteger16" integers 0 through 65535 "Integer32" signed 32-bit integers from through "UnsignedInteger32" integers 0 through "Integer64" signed 64-bit integers from through "UnsignedInteger64" integers 0 through "Real32" single-precision real (32-bit) "Real64" double-precision real (64-bit) "ComplexReal32" single-precision complex "ComplexReal64" double-precision complex
- NumericArray[array,type] clips values to the range supported by type and rounds reals to integers, if necessary.
- Other conversion method settings include:
"Check" checks values to be compatible with type "Coerce" coerces to type "Round" rounds reals to integers "ClipAndCheck" clips to the range and checks for compatible type "ClipAndCoerce" clips to the range and coerces to type "ClipAndRound" clips to the range and rounds reals to integers
- For complex numbers, the method is applied separately to real and imaginary parts.
- NumericArray is treated as a raw object by functions like AtomQ and for purposes of pattern matching.
- Normal[NumericArray[…]] yields the list of values in the numeric array.
- Functions such as Length, Equal and First work with NumericArray objects.
- Functions such as Part, Take and Drop can be used to take or drop parts of a NumericArray object.
- Functions such as ListPlot, ArrayPlot and BarChart can visualize a NumericArray object.
Examplesopen allclose all
Basic Examples (2)
Basic Uses (6)
Create a numeric array from a list using a specific type:
Specify the conversion method to fit numbers in the desired type:
Convert ByteArray to NumericArray:
Convert SparseArray to NumericArray:
Convert SymmetrizedArray to NumericArray:
NumericArray Types (3)
Converting between NumericArray Objects (2)
Operating on a NumericArray (9)
Array Properties (3)
ByteCount of a numeric array:
Properties & Relations (2)
Byte count of a NumericArray is less than the equivalent list of random integers:
Normal can convert a NumericArray to a normal expression:
Possible Issues (2)
Some conversion methods may not give numbers suitable for the new type:
Use a conversion that yields numbers supported by the new type:
The default conversion method will fail when the input array contains numbers that are out of range for the specified type.
Try to store in an "Integer8" numeric array:
Use the "ClipAndCoerce" method to automatically clip to the smallest "Integer8":
Wolfram Research (2019), NumericArray, Wolfram Language function, https://reference.wolfram.com/language/ref/NumericArray.html.
Wolfram Language. 2019. "NumericArray." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/NumericArray.html.
Wolfram Language. (2019). NumericArray. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NumericArray.html