Sample names without duplicates, without introducing bias I have a set of people objects, each with a unique ID and possibly non-unique name. I'd like to sample some number of them and ensure the sample does not have duplicate names. My issue is that the naive method, of resampling any duplicated names, results in people with non-unique names having a lower probability of being sampled. Is there a way to do this without introducing bias?
Thanks!

Any method you use if you want to ensure non-duplicated names will result in people with less common names having a higher probability of being sampled.
As a thought experiment, suppose you want to sample $k$ objects out of $n$, but there are only $k<n$ names, so each name has to be sampled exactly once. Of these, $k-1$ names occur $m\geq 2$ times each, and the $k$-th name occurs only once. (So $n=m(k-1)+1$.) Then each object with a duplicated name has a chance of $\frac{1}{m}$ of being sampled (because it is a member of a group of size $m$, one of which must be sampled, because we have to choose one member from each "name group"), and the single object with a non-duplicated name will be chosen with certainty, i.e., with probability $1$.
