numpy.logical_xor() in Python
Last Updated :
29 Nov, 2018
numpy.logical_xor(arr1, arr2, out=None, where = True, casting = ‘same_kind’, order = ‘K’, dtype = None, ufunc ‘logical_xor’) : This is a logical function and it helps user to find out the truth value of arr1 XOR arr2 element-wise. Both the arrays must be of same shape.
Parameters :
arr1 : [array_like]Input array.
arr2 : [array_like]Input array.
out : [ndarray, optional]Output array with same dimensions as Input array, placed with result.
**kwargs : allows you to pass keyword variable length of argument to a function. It is used when we want to handle named argument in a function.
where : [array_like, optional]True value means to calculate the universal functions(ufunc) at that position, False value means to leave the value in the output alone.
Return :
An array with Boolean results of arr1 XOR arr2 element-wise(of the same shape).
Code 1 : Working
import numpy as np
arr1 = [ 1 , 3 , False , 0 ]
arr2 = [ 3 , 0 , True , False ]
out_arr = np.logical_xor(arr1, arr2)
print ( "Output Array : " , out_arr)
|
Output :
Output Array : [False True True False]
Code 2 : Value Error if input array’s have different shapes
import numpy as np
arr1 = [ 8 , 2 , False , 4 ]
arr2 = [ 3 , 0 , False , False , 8 ]
out_arr = np.logical_xor(arr1, arr2)
print ( "Output Array : " , out_arr)
|
Output :
ValueError: operands could not be broadcast together with shapes (4,) (5,)
Code 3 : Can check condition
import numpy as np
arr1 = np.arange( 8 )
print ( "arr1 : " , arr1)
print ( "\narr1>3 : \n" , arr1> 3 )
print ( "\narr1<6 : \n" , arr1< 6 )
print ( "\nXOR Value : \n" , np.logical_xor(arr1> 3 , arr1< 6 ))
|
Output :
arr1 : [0 1 2 3 4 5 6 7]
arr1>3 :
[False False False False True True True True]
arr1<6 :
[ True True True True True True False False]
XOR Value :
[ True True True True False False True True]
References :
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.logical_xor.html#numpy.logical_xor
.
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...