class statsmodels.stats.diagnostic.HetGoldfeldQuandt[source]

test whether variance is the same in 2 subsamples

  • y (array_like) – endogenous variable
  • x (array_like) – exogenous variable, regressors
  • idx (integer) – column index of variable according to which observations are sorted for the split
  • split (None or integer or float in intervall (0,1)) – index at which sample is split. If 0<split<1 then split is interpreted as fraction of the observations in the first sample
  • drop (None, float or int) – If this is not None, then observation are dropped from the middle part of the sorted series. If 0<split<1 then split is interpreted as fraction of the number of observations to be dropped. Note: Currently, observations are dropped between split and split+drop, where split and drop are the indices (given by rounding if specified as fraction). The first sample is [0:split], the second sample is [split+drop:]
  • alternative (string, 'increasing', 'decreasing' or 'two-sided') – default is increasing. This specifies the alternative for the p-value calculation.

  • (fval, pval) or res
  • fval (float) – value of the F-statistic
  • pval (float) – p-value of the hypothesis that the variance in one subsample is larger than in the other subsample
  • res (instance of result class) – The class instance is just a storage for the intermediate and final results that are calculated


The Null hypothesis is that the variance in the two sub-samples are the same. The alternative hypothesis, can be increasing, i.e. the variance in the second sample is larger than in the first, or decreasing or two-sided.

Results are identical R, but the drop option is defined differently. (sorting by idx not tested yet)


run(y, x[, idx, split, drop, alternative, …]) see class docstring