When I normalize the weights I use for fitting a line with weighted least squares, the parameters of the fitted line and the 'normal' standard errors stay exactly the same, as I would expect. The HC3 standard error estimates, however, change completely.
I get the feeling that I am missing something quite important here, but... well, I am missing it...
Here is some test code in Python:
import statsmodels.api as sm
import numpy as np
myData = np.array([1, 1, 2, 2, 3, 3, 4, 4], dtype=float)
myIndex = sm.add_constant(range(len(myData)))
myWeights = np.array([100,10,100,10,100,10,100,10], dtype=float)
fit1 = sm.WLS(myData, myIndex, weights=myWeights).fit()
print "Parameters: %s" % fit1.params
print "Normal standard errors: %s" % fit1.bse
print "HC3 estimates: %s" % fit1.HC3_se
# Normalise the weights
myWeights /= myWeights.sum()
fit2 = sm.WLS(myData, myIndex, weights=myWeights).fit()
print "Parameters: %s" % fit2.params
print "Normal standard errors: %s" % fit2.bse
print "HC3 estimates: %s" % fit2.HC3_se
Which produces:
Parameters: [ 0.9796748 0.49186992]
Normal standard errors: [ 0.09876738 0.02581648]
HC3 estimates: [ 0.00976334 0.00314918]
Parameters: [ 0.9796748 0.49186992]
Normal standard errors: [ 0.09876738 0.02581648]
HC3 estimates: [ 44.54587593 0.75750668]
HCCM matrices are only appropriate for OLS
documentation for HCxxx statsmodels.sourceforge.net/stable/generated/… $\endgroup$