Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Find Unique Items Using np.setdiff1d()
📖 Scenario: Imagine you have two lists of products from two different stores. You want to find which products are available in the first store but not in the second store.
🎯 Goal: Build a small program that uses np.setdiff1d() to find items unique to the first list.
📋 What You'll Learn
Create two numpy arrays with exact product names
Create a variable to hold the difference using np.setdiff1d()
Print the resulting array of unique items
💡 Why This Matters
🌍 Real World
Finding unique items between two lists is common in inventory management, customer lists, or comparing datasets.
💼 Career
Data analysts and scientists often need to compare datasets to find differences or unique entries.
Progress0 / 4 steps
1
Create the product lists
Create a numpy array called store1_products with these exact items: 'apple', 'banana', 'cherry', 'date', 'fig'.
NumPy
Hint
Use np.array([...]) to create the array with the exact product names.
2
Create the second product list
Create a numpy array called store2_products with these exact items: 'banana', 'date', 'elderberry', 'grape'.
NumPy
Hint
Use np.array([...]) again to create the second list with the exact product names.
3
Find products unique to the first store
Create a variable called unique_to_store1 that uses np.setdiff1d() to find items in store1_products that are not in store2_products.
NumPy
Hint
Use np.setdiff1d(array1, array2) to find items in array1 not in array2.
4
Print the unique products
Print the variable unique_to_store1 to display the products unique to the first store.
NumPy
Hint
Use print(unique_to_store1) to show the result.
Practice
(1/5)
1.
What does the function np.setdiff1d(arr1, arr2) do?
easy
A. Finds elements in arr1 that are not in arr2
B. Finds elements common to both arr1 and arr2
C. Combines arr1 and arr2 into one array
D. Sorts arr1 in descending order
Solution
Step 1: Understand the function purpose
np.setdiff1d(arr1, arr2) returns elements unique to arr1 that are not found in arr2.
Step 2: Compare with options
Finds elements in arr1 that are not in arr2 matches this behavior exactly, while others describe different operations.
Final Answer:
Finds elements in arr1 that are not in arr2 -> Option A
Quick Check:
Unique elements in arr1 = D [OK]
Hint: Remember: setdiff1d finds what is only in first array [OK]
Common Mistakes:
Confusing setdiff1d with intersection
Thinking it merges arrays
Assuming it sorts in descending order
2.
Which of the following is the correct syntax to find elements in a not in b using np.setdiff1d()?
a = np.array([1, 2, 3])
b = np.array([2, 3, 4])
easy
A. np.setdiff1d(a + b)
B. np.setdiff1d(b, a)
C. np.setdiff1d(a)
D. np.setdiff1d(a, b)
Solution
Step 1: Identify correct parameter order
The first argument is the array to find unique elements from; the second is the array to exclude elements from.
Step 2: Match with options
To find elements in a not in b, use np.setdiff1d(a, b), which is np.setdiff1d(a, b).
Final Answer:
np.setdiff1d(a, b) -> Option D
Quick Check:
First array minus second array = A [OK]
Hint: First argument is the array to subtract from [OK]
Common Mistakes:
Swapping the order of arrays
Passing only one array
Trying to add arrays inside setdiff1d
3.
What is the output of the following code?
import numpy as np
x = np.array([5, 3, 9, 1])
y = np.array([3, 7, 1])
result = np.setdiff1d(x, y)
print(result)
medium
A. [1 3 5 7 9]
B. [5 9]
C. [3 7]
D. [1 5 9]
Solution
Step 1: Identify elements in x not in y
Elements in x are [5, 3, 9, 1]. Elements in y are [3, 7, 1]. The elements in x but not in y are 5 and 9.
Step 2: Check output format
np.setdiff1d returns a sorted array without duplicates, so output is [5 9].
Final Answer:
[5 9] -> Option B
Quick Check:
Unique elements in x = A [OK]
Hint: Output is sorted unique elements from first array only [OK]
Common Mistakes:
Including elements from second array
Not sorting output
Confusing with intersection output
4.
Find the error in this code snippet:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([2, 3, 4])
result = np.setdiff1d(arr1 arr2)
print(result)
medium
A. Missing comma between arguments in setdiff1d
B. Arrays must be lists, not numpy arrays
C. Function name is misspelled
D. print statement syntax is incorrect
Solution
Step 1: Check function call syntax
The call np.setdiff1d(arr1 arr2) is missing a comma between arr1 and arr2.
Step 2: Verify other parts
Arrays are correctly numpy arrays, function name is correct, and print syntax is valid in Python 3.
Final Answer:
Missing comma between arguments in setdiff1d -> Option A
Quick Check:
Comma separates arguments = C [OK]
Hint: Check commas between function arguments carefully [OK]
Common Mistakes:
Forgetting commas between parameters
Thinking numpy arrays are invalid inputs
Assuming print needs parentheses in Python 3
5.
You have two arrays representing IDs of users who visited two different websites: