ak.values_astype#
Defined in awkward.operations.ak_values_astype on line 16.
- ak.values_astype(array, to, *, including_unknown=False, highlevel=True, behavior=None, attrs=None)#
- Parameters:
array – Array-like data (anything
ak.to_layout
recognizes).to (dtype or dtype specifier) – Type to convert the numbers into.
including_unknown (bool) – If True, the
unknown
type is considered a value type and is converted to the specified dtype; if False,unknown
will remainunknown
.highlevel (bool) – If True, return an
ak.Array
; otherwise, return a low-levelak.contents.Content
subclass.behavior (None or dict) – Custom
ak.behavior
for the output array, if high-level.attrs (None or dict) – Custom attributes for the output array, if high-level.
Converts all numbers in the array to a new type, leaving the structure untouched.
For example,
>>> array = ak.Array([1.1, 2.2, 3.3, 4.4, 5.5])
>>> ak.values_astype(array, np.int32)
<Array [1, 2, 3, 4, 5] type='5 * int32'>
and
>>> array = ak.Array([[1.1, 2.2, 3.3], [], [4.4, 5.5]])
>>> ak.values_astype(array, np.int32)
<Array [[1, 2, 3], [], [4, 5]] type='3 * var * int32'>
Note, when converting values to a np.datetime64
type that is unitless, a
default ‘[us]’ unit is assumed - until further specified as numpy dtypes.
For example,
>>> array = ak.Array([1567416600000])
>>> ak.values_astype(array, "datetime64[ms]")
<Array [2019-09-02T09:30:00.000] type='1 * datetime64[ms]'>
or
>>> array = ak.Array([1567416600000])
>>> ak.values_astype(array, np.dtype("M8[ms]"))
<Array [2019-09-02T09:30:00.000] type='1 * datetime64[ms]['>
See also ak.strings_astype
.