Strange, I posted on this before but the comment is gone.

A lot of the problems for the last few years in np.select have come from the dependency on .where.

I'm all for re-use of functions but there is a historical record of tragic failure when it comes to the interplay between np.where and np.select.