Arrow supports logical compute operations over inputs of possibly
varying types. Many compute functions support both array (chunked or not)
and scalar inputs, but some will mandate either. For example,
fill_null function requires its second input to be a scalar,
sort_indices requires its first and only input to
be an array.
Below are a few simple examples:
>>> import pyarrow as pa >>> import pyarrow.compute as pc >>> a = pa.array([1, 1, 2, 3]) >>> pc.sum(a) <pyarrow.Int64Scalar: 7> >>> b = pa.array([4, 1, 2, 8]) >>> pc.equal(a, b) <pyarrow.lib.BooleanArray object at 0x7f686e4eef30> [ false, true, true, false ] >>> x, y = pa.scalar(7.8), pa.scalar(9.3) >>> pc.multiply(x, y) <pyarrow.DoubleScalar: 72.54>