NumPy provides set-like operations on 1D arrays: unique, intersect1d, union1d, in1d (membership), and setdiff1d.
unique
import numpy as np
a = np.array([3, 1, 2, 3, 1])
print(np.unique(a))
vals, counts = np.unique(a, return_counts=True)
print(vals, counts)
Membership and intersection
np.isin(a, test)— boolean membershipnp.intersect1d(a, b)— sorted common elementsnp.setdiff1d(a, b)— in a but not b
Use cases
Find label categories, detect duplicate IDs, align categorical features before encoding in ML pipelines.
Important interview questions and answers
- Q: unique sorted?
A: Returns sorted unique values by default. - Q: isin vs Python in?
A: Vectorized membership for entire array at once.
Self-check
- Count occurrences per unique value.
- Find elements in A that are also in B.
Tip: unique(..., return_counts=True) replaces Counter for arrays.
Interview prep
- unique?
Sorted distinct elements; return_counts gives frequencies.
- isin?
Vectorized membership test.