LinearModelTest_LinearModelBreuschPagan¶

LinearModelTest_LinearModelBreuschPagan
(*args)¶ Test the homoskedasticity of the linear regression model residuals.
Available usages:
LinearModelTest.LinearModelBreuschPagan(firstSample, secondSample)
LinearModelTest.LinearModelBreuschPagan(firstSample, secondSample, linearModel)
LinearModelTest.LinearModelBreuschPagan(firstSample, secondSample, level)
LinearModelTest.LinearModelBreuschPagan(firstSample, secondSample, linearModel, level)
Parameters: fisrtSample : 2d sequence of float
First tested sample, of dimension 1.
secondSample : 2d sequence of float
Second tested sample, of dimension 1.
linearModel :
LinearModel
A linear model. If not provided, it is built using the given samples.
level : positive float
Threshold pvalue of the test (= 1  first type risk), it must be , equal to 0.95 by default.
Returns: testResult :
TestResult
Structure containing the result of the test.
See also
LinearModelTest_LinearModelHarrisonMcCabe
,LinearModelTest_LinearModelResidualMean
,LinearModelTest_LinearModelDurbinWatson
Notes
The LinearModelTest class is used through its static methods in order to evaluate the quality of the linear regression model between two samples (see
LinearModel
). The linear regression model between the scalar variable and the dimensional one is as follows:where is the residual.
The BreuschPagan test checks the heteroskedasticity of the residuals. A linear regression model is fitted on the squared residuals. The statistic is computed using the Studendized version with the chisquared distribution. If the binary quality measure is false, then the homoskedasticity hypothesis can be rejected with respect to the given level.
Examples
>>> import openturns as ot >>> ot.RandomGenerator.SetSeed(0) >>> distribution = ot.Normal() >>> sample = distribution.getSample(30) >>> func = ot.NumericalMathFunction('x', '2 * x + 1') >>> firstSample = sample >>> secondSample = func(sample) + ot.Normal().getSample(30) >>> test_result = ot.LinearModelTest.LinearModelBreuschPagan(firstSample, secondSample) >>> print(test_result) class=TestResult name=Unnamed type=BreuschPagan binaryQualityMeasure=true pvalue threshold=0.95 pvalue=0.700772 description=[]