'Huber\'s t weighting function for the IRLS algorithm
The psi function scaled by z
Parameters
z : array-like
1d array
Returns
weights : array
weights(z) = 1          for \|z\| <= t
weights(z) = t/\|z\|      for \|z\| > t'

def weights(self, z):

    z = np.asarray(z)
    test = self._subset(z)
    absz = np.fabs(z)
    absz[test] = 1.0
    return (test + (((1 - test) * self.t) / absz))
