flopscope.

flopscope.numpy.any

fnp.any(a, axis=None, out=None, keepdims=<no value>, *, where=<no value>)[flopscope source][numpy source]

Test whether any array element along a given axis evaluates to True.

Adapted from NumPy docs np.any

Areacore
Typecounted
NumPy Refnp.any
Cost
numel(input)\text{numel}(\text{input})
Flopscope Context

Test whether any array element is true.

Returns single boolean if axis is None

Parameters

a:array_like

Input array or object that can be converted to an array.

axis:None or int or tuple of ints, optional

Axis or axes along which a logical OR reduction is performed. The default (axis=None) is to perform a logical OR over all the dimensions of the input array. axis may be negative, in which case it counts from the last to the first axis. If this is a tuple of ints, a reduction is performed on multiple axes, instead of a single axis or all the axes as before.

out:ndarray, optional

Alternate output array in which to place the result. It must have the same shape as the expected output and its type is preserved (e.g., if it is of type float, then it will remain so, returning 1.0 for True and 0.0 for False, regardless of the type of a). See ufuncs-output-type for more details.

keepdims:bool, optional

If this is set to True, the axes which are reduced are left in the result as dimensions with size one. With this option, the result will broadcast correctly against the input array.

If the default value is passed, then keepdims will not be passed through to the any method of sub-classes of ndarray, however any non-default value will be. If the sub-class' method does not implement keepdims any exceptions will be raised.

where:array_like of bool, optional

Elements to include in checking for any True values. See reduce for details.

Added in version 1.20.0.

Returns

any:bool or ndarray

A new boolean or ndarray is returned unless out is specified, in which case a reference to out is returned.

See also

Notes

Not a Number (NaN), positive infinity and negative infinity evaluate to True because these are not equal to zero.

Changed in version 2.0.

Examples

>>> import flopscope.numpy as fnp
>>> flops.any([[True, False], [True, True]])
True
>>> flops.any([[True,  False, True ],
... [False, False, False]], axis=0)
array([ True, False, True])
>>> flops.any([-1, 0, 5])
True
>>> flops.any([[flops.nan], [flops.inf]], axis=1, keepdims=True)
array([[ True],
       [ True]])
>>> flops.any([[True, False], [False, False]], where=[[False], [True]])
False
>>> a = flops.array([[1, 0, 0],
... [0, 0, 1],
... [0, 0, 0]])
>>> flops.any(a, axis=0)
array([ True, False,  True])
>>> flops.any(a, axis=1)
array([ True,  True, False])
>>> o=flops.array(False)
>>> z=flops.any([-1, 4, 5], out=o)
>>> z, o
(array(True), array(True))
>>> # Check now that z is a reference to o
>>> z is o
True
>>> id(z), id(o) # identity of z and o              # doctest: +SKIP
(191614240, 191614240)