NumPy | logical_not method
Start your free 7-days trial now!
Numpy's logical_not(~)
whether each value in the input array evaluates to False. A useful interpretation of this method is that it flips the boolean, that is, True become False and vice versa.
Parameters
1. a
| array_like
The input array.
2. out
| Numpy array
| optional
Instead of creating a new array, you can place the computed result into the array specified by out
.
3. where
| array
of boolean
| optional
Values that are flagged as False will be ignored, that is, their original value will be uninitialized. If you specified the out parameter, the behavior is slightly different - the original value will be kept intact.
Return value
If a
is a scalar, then a single boolean is returned. Otherwise, a Numpy array of booleans is returned.
Examples
Basic usage
np.logical_not([False, True])
array([ True, False])
np.logical_not([0, 1, 5])
array([ True, False, False])
On a more practical note, suppose we wanted to find that numbers are not even from an array:
a = np.array([1,2,3,4,5])mask = np.logical_not(a%2==0)mask
array([ True, False, True, False, True])
To fetch the values that fit our criteria (i.e. the one flagged as True):
a[mask]
array([1, 3, 5])