NumPy: Check two random arrays are equal or not
Write a NumPy program to check two random arrays are equal or not.
Sample Solution:
Python Code :
# Importing the NumPy library as np
import numpy as np
# Generating the first array 'x' with 6 random integers (0 or 1) using np.random.randint()
x = np.random.randint(0, 2, 6)
# Printing the first generated array 'x'
print("First array:")
print(x)
# Generating the second array 'y' with 6 random integers (0 or 1) using np.random.randint()
y = np.random.randint(0, 2, 6)
# Printing the second generated array 'y'
print("Second array:")
print(y)
# Checking if the two arrays 'x' and 'y' are equal using np.allclose()
# This function returns True if the two arrays are element-wise equal within a tolerance
array_equal = np.allclose(x, y)
# Printing whether the two arrays are equal or not
print("Test above two arrays are equal or not!")
print(array_equal)
Sample Output:
First array: [1 0 0 0 1 0] Second array: [0 0 1 1 0 1] Test above two arrays are equal or not! False
Explanation:
In the above exercise –
x = np.random.randint(0, 2, 6): This line creates a 1D array x with 6 random integers between 0 and 1 using the np.random.randint() function. The input values 0 and 2 specify the lower (inclusive) and upper (exclusive) boundaries for the random integers, and 6 is the size of the output array.
y = np.random.randint(0, 2, 6): This line creates another 1D array y with the same specifications as x.
array_equal = np.allclose(x, y): This line checks if the two arrays x and y are element-wise equal using the np.allclose() function. The function returns True if all elements in the arrays are approximately equal within a specified tolerance, and False otherwise. In this case, since we're comparing integers, the default tolerance is effectively zero, meaning that the function checks for exact equality.
Pictorial Presentation:
Python-Numpy Code Editor:
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics