I would rather raise an exception, I think in the most common cases in stats we don't have homogeneous columns.

the only part that cannot be vectorized without loop is rankdata, otherwise we could handle nd input easily.