pythonpython-3.xawkward-array

Changing an awkward array's values' type from float to int


I have an awkward array of type float and I need it to be of type int. Something equivalent to the following numpy snippet:

import numpy as np
import awkward as ak

arr = np.array([1., 2., 3.])
arr = arr.astype(int)

arr2 = ak.Array(np.array([1., 2., 3.]))
arr2 = arr2.???

Solution

  • If you have an awkward array, arr, where:

    >>> arr.type
    20 * float64
    

    You can simply use ak.values_astype:

    >>> arr = ak.values_astype(arr, "int64")
    >>> arr
    20 * int64