# [EN] ulab EP 6 compare

compare

The compare submodule is used to compare 1D and 2D arrays to find similarities, differences, choose a larger one or smaller one. The four functions have the following usage patterns:

1. result = ulab.comapre.clip( M, a, b ) It changes the value of every element less than a to a, and any element greater than b is changed to b just like maximum( a, minimum( M, b ) )
2. result = ulab.comapre.clip( M, N, b ) If M and N have the same members, the operation compares the values of M with N. If any of the elements of M is less than N, the value of N is chosen, and if any value is greater than b, the value of b is chosen instead.
3. result = ulab.compare.equal( M, N ) Comparing M and N, return True, if it is the same otherwise return False.
4. result = ulab.compare.not_equal( M, N ) Comparing M and N, return True if they are different otherwise return False.
5. result = ulab.comapre.maximum( M, N ) Compares M with N. If any element of both arrays is greater then it will be picked as a result of that sequence.
6. result = ulab.comapre.minimum( M, N ) Compares M with N. If any element of an array is smaller, it will be selected as the value of the newly created array.

Example Code

Example code18-13 creates M and N int8 type arrays of 12, then compares that each member is the same, different or not. After that, find a lesser and greater array by comparing M and N. Finally, clip the data. The result is as shown in Figure 1.

``````# code18-13
import ulab as np

M = np.array(range(12), dtype=np.int8)
N = np.linspace(12,1,12,dtype=np.int8)

print("M == N ? {}".format(np.compare.equal(M, N)))
print("M != N ? {}".format(np.compare.not_equal(M, N)))
print("minimum(M,N) = {}".format(np.compare.minimum(M,N)))
print("maximum(M,N) = {}".format(np.compare.maximum(M,N)))
print("clip(M,5,10) = {}".format(np.compare.clip(M,5,10)))
print("clip(M,N,10) = {}".format(np.compare.clip(M,N,10)))

``````