pysal.model.spreg.
ThreeSLS
(bigy, bigX, bigyend, bigq, regimes=None, nonspat_diag=True, name_bigy=None, name_bigX=None, name_bigyend=None, name_bigq=None, name_ds=None, name_regimes=None)[源代码]¶3sls估计的用户类
参数: |
|
---|
实例
首先导入pysal.lib以加载空间分析工具。
>>> import pysal.lib
使用pysal.lib.io.open()打开有关NCOVR美国县凶杀案(3085个地区)的数据。这是与nat形状文件关联的dbf。注意pysal.lib.io.open()也可以读取csv格式的数据。
>>> db = pysal.lib.io.open(pysal.lib.examples.get_path("NAT.dbf"),'r')
待估算模型的规格可作为列表提供。每个方程应单独列出。在本例中,方程式1以hr80为因变量,ps80和ue80为外生回归量,rd80为内生回归量,fp79为附加工具。式2中,hr90为因变量,ps90和ue90为外生回归量,rd90为内生回归量,fp99为附加工具。
>>> y_var = ['HR80','HR90']
>>> x_var = [['PS80','UE80'],['PS90','UE90']]
>>> yend_var = [['RD80'],['RD90']]
>>> q_var = [['FP79'],['FP89']]
SUR方法要求将数据作为字典提供。Pysal提供了两个工具来从变量列表中创建这些字典:sur_dictxy和sur_dictz。工具sur_dictxy可用于为y和x创建字典,并为内生变量(yend)和附加工具(q)创建sur_dictz。
>>> bigy,bigX,bigyvars,bigXvars = pysal.model.spreg.sur_utils.sur_dictxy(db,y_var,x_var)
>>> bigyend,bigyendvars = pysal.model.spreg.sur_utils.sur_dictZ(db,yend_var)
>>> bigq,bigqvars = pysal.model.spreg.sur_utils.sur_dictZ(db,q_var)
我们现在可以运行回归,然后通过键入:print(reg.summary)得到输出的摘要。
或者,我们可以检查参数的betas和标准误差、渐近t和p值:
>>> reg = ThreeSLS(bigy,bigX,bigyend,bigq,name_bigy=bigyvars,name_bigX=bigXvars,name_bigyend=bigyendvars,name_bigq=bigqvars,name_ds="NAT")
>>> reg.b3SLS
{0: array([[ 6.92426353],
[ 1.42921826],
[ 0.00049435],
[ 3.5829275 ]]), 1: array([[ 7.62385875],
[ 1.65031181],
[-0.21682974],
[ 3.91250428]])}
>>> reg.tsls_inf
{0: array([[ 0.23220853, 29.81916157, 0. ],
[ 0.10373417, 13.77770036, 0. ],
[ 0.03086193, 0.01601807, 0.98721998],
[ 0.11131999, 32.18584124, 0. ]]), 1: array([[ 0.28739415, 26.52753638, 0. ],
[ 0.09597031, 17.19606554, 0. ],
[ 0.04089547, -5.30204786, 0.00000011],
[ 0.13586789, 28.79638723, 0. ]])}
属性: |
|
---|
__init__
(bigy, bigX, bigyend, bigq, regimes=None, nonspat_diag=True, name_bigy=None, name_bigX=None, name_bigyend=None, name_bigq=None, name_ds=None, name_regimes=None)[源代码]¶初始化自身。请参阅帮助(键入(self))以获得准确的签名。
方法
__init__ \(bigy,bigx,bigyend,bigq[,…]) |
初始化自身。 |