ak.to_regular
-------------

Defined in `awkward.operations.structure <https://github.com/scikit-hep/awkward-1.0/blob/80bbef0738a6b7928333d7c705ee1b359991de5b/src/awkward/operations/structure.py>`__ on `line 752 <https://github.com/scikit-hep/awkward-1.0/blob/80bbef0738a6b7928333d7c705ee1b359991de5b/src/awkward/operations/structure.py#L752>`__.

.. py:function:: ak.to_regular(array, axis=1, highlevel=True, behavior=None)


    :param array: Array to convert.
    :param axis: The dimension at which this operation is applied. The
             outermost dimension is ``0``, followed by ``1``, etc., and negative
             values count backward from the innermost: ``-1`` is the innermost
             dimension, ``-2`` is the next level up, etc.
    :type axis: int
    :param highlevel: If True, return an :py:obj:`ak.Array`; otherwise, return
                  a low-level :py:obj:`ak.layout.Content` subclass.
    :type highlevel: bool
    :param behavior: Custom :py:obj:`ak.behavior` for the output array, if
                 high-level.
    :type behavior: None or dict

Converts a variable-length axis into a regular one, if possible.

.. code-block:: python


    >>> irregular = ak.from_iter(np.arange(2*3*5).reshape(2, 3, 5))
    >>> ak.type(irregular)
    2 * var * var * int64
    >>> ak.type(ak.to_regular(irregular))
    2 * 3 * var * int64
    >>> ak.type(ak.to_regular(irregular, axis=2))
    2 * var * 5 * int64
    >>> ak.type(ak.to_regular(irregular, axis=-1))
    2 * var * 5 * int64

But truly irregular data cannot be converted.

.. code-block:: python


    >>> ak.to_regular(ak.Array([[1, 2, 3], [], [4, 5]]))
    ValueError: in ListOffsetArray64, cannot convert to RegularArray because
    subarray lengths are not regular

See also :py:obj:`ak.from_regular`.

