Skip to content

broadcast_arrays

Broadcasts one or more arrays against one another.

Parameters:

Name Type Description Default
arrays

an arbitrary number of to-be broadcasted arrays.

()

Returns:

Name Type Description
out List[array]

a list of broadcasted arrays. Each array has the same shape. Each array has the same dtype as its corresponding input array.

Examples:

>>> a = sparse.COO.from_numpy(np.array([[0, 1]]))
>>> b = sparse.COO.from_numpy(np.array([[0], [2]]))
>>> oa, ob = sparse.broadcast_arrays(a, b)
>>> oa.todense()
array([[0, 1],
        [0, 1]])
>>> ob.todense()
array([[0, 0],
        [2, 2]])
Source code in sparse/numba_backend/_common.py
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
def broadcast_arrays(*arrays):
    """
    Broadcasts one or more arrays against one another.

    Parameters
    ----------
    arrays: array
        an arbitrary number of to-be broadcasted arrays.

    Returns
    -------
    out: List[array]
        a list of broadcasted arrays. Each array has the same shape.
        Each array has the same dtype as its corresponding input array.

    Examples
    --------
    >>> a = sparse.COO.from_numpy(np.array([[0, 1]]))
    >>> b = sparse.COO.from_numpy(np.array([[0], [2]]))
    >>> oa, ob = sparse.broadcast_arrays(a, b)
    >>> oa.todense()  # doctest: +NORMALIZE_WHITESPACE
    array([[0, 1],
            [0, 1]])
    >>> ob.todense()  # doctest: +NORMALIZE_WHITESPACE
    array([[0, 0],
            [2, 2]])
    """

    shape = np.broadcast_shapes(*[a.shape for a in arrays])
    return [a.broadcast_to(shape) for a in arrays]