# numpy.ma.stack

ma.stack = <numpy.ma.extras._fromnxfunction_seq object>

  stack

  Join a sequence of arrays along a new axis.

  The `axis` parameter specifies the index of the new axis in the dimensions of the result. For example, if `axis=0` it will be the first dimension and if `axis=-1` it will be the last dimension.

  New in version 1.10.0.

  Parameters:
    arrays sequence of array_like

      Each array must have the same shape.

    axis int, optional

      The axis in the result array along which the input arrays are stacked.

    out ndarray, optional

      If provided, the destination to place the result. The shape must be correct, matching that of what stack would have returned if no out argument were specified.

    dtype str or dtype

      If provided, the destination array will have this dtype. Cannot be provided together with out.

      New in version 1.24.

    casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, optional

      Controls what kind of data casting may occur. Defaults to ‘same_kind’.

      New in version 1.24.

  Returns:
    stacked ndarray

      The stacked array has one more dimension than the input arrays.

  See also

  `concatenate`

    Join a sequence of arrays along an existing axis.

  `block`

    Assemble an nd-array from nested lists of blocks.

  `split`

    Split array into a list of multiple sub-arrays of equal size.

  Notes

  The function is applied to both the _data and the _mask, if any.

  Examples

      >>> arrays = [np.random.randn(3, 4) for _ in range(10)]
      >>> np.stack(arrays, axis=0).shape
      (10, 3, 4)

      >>> np.stack(arrays, axis=1).shape
      (3, 10, 4)

      >>> np.stack(arrays, axis=2).shape
      (3, 4, 10)

      >>> a = np.array([1, 2, 3])
      >>> b = np.array([4, 5, 6])
      >>> np.stack((a, b))
      array([[1, 2, 3],
             [4, 5, 6]])

      >>> np.stack((a, b), axis=-1)
      array([[1, 4],
             [2, 5],
             [3, 6]])