Why does it work on `counts[nz]`? I ran some quick tests in an array with lots of zeros, and `np.random.multinomial` was faster when working with `counts[nz]`, but the difference was in fact completely reversed due to the time computing `nz` takes.

I'm not sure if it can also be removed from the next branch, but `nz` could be computed just in that case.