sparktk.frame.ops.timeseries_breusch_pagan_test module
# vim: set encoding=utf-8
# Copyright (c) 2016 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
from sparktk.propobj import PropertiesObject
def timeseries_breusch_pagan_test(self, residuals, factors):
"""
Peforms the Breusch-Pagan test for heteroskedasticity.
Parameters
----------
:param residuals: (str) Name of the column that contains residual (y) values
:param factors: (List[str]) Name of the column(s) that contain factors (x) values
:return: (BreuschPaganTestResult) Object contains the Breusch-Pagan test statistic and p-value.
Example
-------
Consider the following frame:
>>> frame.inspect()
[#] AT V AP RH PE
=========================================
[0] 8.34 40.77 1010.84 90.01 480.48
[1] 23.64 58.49 1011.4 74.2 445.75
[2] 29.74 56.9 1007.15 41.91 438.76
[3] 19.07 49.69 1007.22 76.79 453.09
[4] 11.8 40.66 1017.13 97.2 464.43
[5] 13.97 39.16 1016.05 84.6 470.96
[6] 22.1 71.29 1008.2 75.38 442.35
[7] 14.47 41.76 1021.98 78.41 464
[8] 31.25 69.51 1010.25 36.83 428.77
[9] 6.77 38.18 1017.8 81.13 484.3
Calculate the Bruesh-Pagan test statistic where the "AT" column contains residual values and the other columns are
factors:
>>> result = frame.timeseries_breusch_pagan_test("AT",["V","AP","RH","PE"])
[===Job Progress===]
The result contains the test statistic and p-value:
>>> result
p_value = 0.000147089380721
test_stat = 22.6741588802
"""
if not isinstance(residuals, str):
raise TypeError("residuals parameter should be a str (column name).")
if isinstance(factors, str):
factors = [factors]
if not isinstance(factors, list):
raise TypeError("factors parameter should be a list of strings (column names).")
scala_result = self._scala.timeSeriesBreuschPaganTest(residuals,
self._tc.jutils.convert.to_scala_list_string(factors))
return BreuschPaganTestResult(scala_result)
class BreuschPaganTestResult(PropertiesObject):
"""
BreuschPaganTestResult class contains values that are returned from the breusch_Pagan_test.
"""
def __init__(self, scala_result):
self._test_stat = scala_result.testStat()
self._p_value = scala_result.pValue()
@property
def test_stat(self):
"""
Breusch-Pagan test statistic
"""
return self._test_stat
@property
def p_value(self):
"""
p-value
"""
return self._p_value
Functions
def timeseries_breusch_pagan_test(
self, residuals, factors)
Peforms the Breusch-Pagan test for heteroskedasticity.
Parameters:
residuals | (str): | Name of the column that contains residual (y) values |
factors | (List[str]): | Name of the column(s) that contain factors (x) values |
Returns | (BreuschPaganTestResult): | Object contains the Breusch-Pagan test statistic and p-value. |
Example:
Consider the following frame:
>>> frame.inspect()
[#] AT V AP RH PE
=========================================
[0] 8.34 40.77 1010.84 90.01 480.48
[1] 23.64 58.49 1011.4 74.2 445.75
[2] 29.74 56.9 1007.15 41.91 438.76
[3] 19.07 49.69 1007.22 76.79 453.09
[4] 11.8 40.66 1017.13 97.2 464.43
[5] 13.97 39.16 1016.05 84.6 470.96
[6] 22.1 71.29 1008.2 75.38 442.35
[7] 14.47 41.76 1021.98 78.41 464
[8] 31.25 69.51 1010.25 36.83 428.77
[9] 6.77 38.18 1017.8 81.13 484.3
Calculate the Bruesh-Pagan test statistic where the "AT" column contains residual values and the other columns are factors:
result = frame.timeseries_breusch_pagan_test("AT",["V","AP","RH","PE"]) [===Job Progress===]
The result contains the test statistic and p-value:
result p_value = 0.000147089380721 test_stat = 22.6741588802
def timeseries_breusch_pagan_test(self, residuals, factors):
"""
Peforms the Breusch-Pagan test for heteroskedasticity.
Parameters
----------
:param residuals: (str) Name of the column that contains residual (y) values
:param factors: (List[str]) Name of the column(s) that contain factors (x) values
:return: (BreuschPaganTestResult) Object contains the Breusch-Pagan test statistic and p-value.
Example
-------
Consider the following frame:
>>> frame.inspect()
[#] AT V AP RH PE
=========================================
[0] 8.34 40.77 1010.84 90.01 480.48
[1] 23.64 58.49 1011.4 74.2 445.75
[2] 29.74 56.9 1007.15 41.91 438.76
[3] 19.07 49.69 1007.22 76.79 453.09
[4] 11.8 40.66 1017.13 97.2 464.43
[5] 13.97 39.16 1016.05 84.6 470.96
[6] 22.1 71.29 1008.2 75.38 442.35
[7] 14.47 41.76 1021.98 78.41 464
[8] 31.25 69.51 1010.25 36.83 428.77
[9] 6.77 38.18 1017.8 81.13 484.3
Calculate the Bruesh-Pagan test statistic where the "AT" column contains residual values and the other columns are
factors:
>>> result = frame.timeseries_breusch_pagan_test("AT",["V","AP","RH","PE"])
[===Job Progress===]
The result contains the test statistic and p-value:
>>> result
p_value = 0.000147089380721
test_stat = 22.6741588802
"""
if not isinstance(residuals, str):
raise TypeError("residuals parameter should be a str (column name).")
if isinstance(factors, str):
factors = [factors]
if not isinstance(factors, list):
raise TypeError("factors parameter should be a list of strings (column names).")
scala_result = self._scala.timeSeriesBreuschPaganTest(residuals,
self._tc.jutils.convert.to_scala_list_string(factors))
return BreuschPaganTestResult(scala_result)
Classes
class BreuschPaganTestResult
BreuschPaganTestResult class contains values that are returned from the breusch_Pagan_test.
class BreuschPaganTestResult(PropertiesObject):
"""
BreuschPaganTestResult class contains values that are returned from the breusch_Pagan_test.
"""
def __init__(self, scala_result):
self._test_stat = scala_result.testStat()
self._p_value = scala_result.pValue()
@property
def test_stat(self):
"""
Breusch-Pagan test statistic
"""
return self._test_stat
@property
def p_value(self):
"""
p-value
"""
return self._p_value
Ancestors (in MRO)
- BreuschPaganTestResult
- sparktk.propobj.PropertiesObject
- __builtin__.object
Instance variables
var p_value
p-value
var test_stat
Breusch-Pagan test statistic
Methods
def __init__(
self, scala_result)
def __init__(self, scala_result):
self._test_stat = scala_result.testStat()
self._p_value = scala_result.pValue()
def to_dict(
self)
def to_dict(self):
d = self._properties()
d.update(self._attributes())
return d
def to_json(
self)
def to_json(self):
return json.dumps(self.to_dict())