reduce#
- ivy.reduce(operand, init_value, computation, /, *, axes=0, keepdims=False)[source]#
Reduces the input array’s dimensions by applying a function along one or more axes.
- Parameters:
operand (
Union[Array,NativeArray]) – The array to act on.init_value (
Union[int,float]) – The value with which to start the reduction.computation (
Callable) – The reduction function.axes (
Union[int,Sequence[int]], default:0) – The dimensions along which the reduction is performed.keepdims (
bool, default:False) – If this is set to True, the axes which are reduced are left in the result as dimensions with size one.
- Return type:
- Returns:
ret – The reduced array.
Examples
>>> x = ivy.array([[1, 2, 3], [4, 5, 6]]) >>> ivy.reduce(x, 0, ivy.add, 0) ivy.array([6, 15])
>>> x = ivy.array([[1, 2, 3], [4, 5, 6]]) >>> ivy.reduce(x, 0, ivy.add, 1) ivy.array([5, 7, 9])
- Array.reduce(self, init_value, computation, /, *, axes=0, keepdims=False)[source]#
ivy.Array instance method variant of ivy.reduce. This method simply wraps the function, and so the docstring for ivy.reduce also applies to this method with minimal changes.
- Parameters:
self (
Array) – The array to act on.init_value (
Union[int,float]) – The value with which to start the reduction.computation (
Callable) – The reduction function.axes (
Union[int,Sequence[int]], default:0) – The dimensions along which the reduction is performed.keepdims (
bool, default:False) – If this is set to True, the axes which are reduced are left in the result as dimensions with size one.
- Return type:
Array- Returns:
ret – The reduced array.
Examples
>>> x = ivy.array([[1, 2, 3], [4, 5, 6]]) >>> x.reduce(0, ivy.add, 0) ivy.array([6, 15])
- Container.reduce(self, init_value, computation, /, *, axes=0, keepdims=False, key_chains=None, to_apply=True, prune_unapplied=False, map_sequences=False)[source]#
ivy.Container instance method variant of ivy.reduce. This method simply wraps the function, and so the docstring for ivy.reduce also applies to this method with minimal changes.
- Parameters:
self (
Container) – The array to act on.init_value (
Union[int,float,Container]) – The value with which to start the reduction.computation (
Union[Callable,Container]) – The reduction function.axes (
Union[int,Sequence[int],Container], default:0) – The dimensions along which the reduction is performed.keepdims (
Union[bool,Container], default:False) – If this is set to True, the axes which are reduced are left in the result as dimensions with size one.key_chains (
Optional[Union[List[str],Dict[str,str],Container]], default:None) – The key-chains to apply or not apply the method to. Default isNone.to_apply (
Union[bool,Container], default:True) – If True, the method will be applied to key_chains, otherwise key_chains will be skipped. Default isTrue.prune_unapplied (
Union[bool,Container], default:False) – Whether to prune key_chains for which the function was not applied. Default isFalse.map_sequences (
Union[bool,Container], default:False) – Whether to also map method to sequences (lists, tuples). Default isFalse.
- Return type:
Container- Returns:
ret – The reduced array.
Examples
>>> x = ivy.Container( ... a=ivy.array([[1, 2, 3], [4, 5, 6]]), ... b=ivy.native_array([[7, 8, 9], [10, 5, 1]])) >>> y = x.reduce(0, ivy.add) >>> print(y) { a: ivy.array([5, 7, 9]), b: ivy.array([17, 13, 10]) }