This will reject ints as well as numpy float types. I've not tried it before, but `np.isreal` seems to do the right thing...