pysal.model.spreg.SURlagIV

class pysal.model.spreg.SURlagIV(bigy, bigX, bigyend=None, bigq=None, w=None, regimes=None, vm=False, regime_lag_sep=False, w_lags=1, lag_q=True, nonspat_diag=True, spat_diag=False, name_bigy=None, name_bigX=None, name_bigyend=None, name_bigq=None, name_ds=None, name_w=None, name_regimes=None)[源代码]

空间滞后估计的用户类

参数:
bigy : 因式变量矢量字典
bigX : 用方程表示的解释变量矩阵字典

(注,已包含常量项)

bigyend : 内生变量矩阵方程词典

(可选)

bigq : 用公式表示的仪器矩阵字典

(可选)

w : 空间权重对象,必需
vm : 布尔

全方差协方差矩阵列表,默认值=假

w_lags : 整数

WX仪器的空间滞后顺序,默认值=1

lag_q : 布尔

将空间滞后应用于其他仪器的标志,默认值=真

nonspat_diag : 布尔值;非空间诊断的标志,默认值为真
spat_diag : 布尔值;空间诊断标志,默认值为假
name_bigy : 每个方程的因变量名称字典

默认值为“无”,但应指定在使用sur-stackxy时完成。

name_bigX : 字典,每个字典都有解释变量的名称

公式默认值=无,但当使用sur-stackxy时应指定。

name_bigyend : 字典,每个字典都有内生变量的名称

公式默认值=无,但应在使用sur_stackz时进行特殊修改

name_bigq : 每种仪器变量名称的字典

公式默认值=无,但应在使用sur_stackz时指定。

name_ds : 字符串;数据集的名称
name_w : 字符串;空间权重的名称

实例

首先导入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)

要运行空间滞后模型,需要指定空间权重矩阵。为此,我们可以打开一个已经存在的gal文件或创建一个新的gal文件。在这个例子中,我们将从nat.shp创建一个新的,并将其转换为标准化的行。

>>> w = pysal.lib.weights.Queen.from_shapefile(pysal.lib.examples.get_path("NAT.shp"))
>>> w.transform='r'

我们现在可以运行回归,然后通过键入:print(reg.summary)得到输出的摘要。

或者,我们可以检查参数的betas和标准误差、渐近t和p值:

>>> reg = SURlagIV(bigy,bigX,bigyend,bigq,w=w,name_bigy=bigyvars,name_bigX=bigXvars,name_bigyend=bigyendvars,name_bigq=bigqvars,name_ds="NAT",name_w="nat_queen")
>>> reg.b3SLS
{0: array([[ 6.95472387],
       [ 1.44044301],
       [-0.00771893],
       [ 3.65051153],
       [ 0.00362663]]), 1: array([[ 5.61101925],
       [ 1.38716801],
       [-0.15512029],
       [ 3.1884457 ],
       [ 0.25832185]])}
>>> reg.tsls_inf
{0: array([[  0.49128435,  14.15620899,   0.        ],
       [  0.11516292,  12.50787151,   0.        ],
       [  0.03204088,  -0.2409087 ,   0.80962588],
       [  0.1876025 ,  19.45875745,   0.        ],
       [  0.05450628,   0.06653605,   0.94695106]]), 1: array([[  0.44969956,  12.47726211,   0.        ],
       [  0.10440241,  13.28674277,   0.        ],
       [  0.04150243,  -3.73761961,   0.00018577],
       [  0.19133145,  16.66451427,   0.        ],
       [  0.04394024,   5.87893596,   0.        ]])}
属性:
w : 空间权重对象
bigy : Y值字典
bigZ : 外生变量和内生变量矩阵字典

对于每个方程

bigyend : 每种内生变量矩阵字典

公式;仅当未指定其他内生变量时才包含WY

bigq : 每种仪器变量矩阵字典

公式;仅当未指定其他内生变量时才包含wx

bigZHZH : 交叉积矩阵字典
bigZHy : 交叉积矩阵字典
n_eq : 方程个数
n : 各断面观测数
bigK : 具有解释变量数量的向量(包括常量,

外生的和内生的)。

b2SLS : 每一个方程的2sls回归系数字典
tslsE : n x n_eq数组,每个方程有ols残差
b3SLS : 每个方程的3sls回归系数字典
varb : 方差协方差矩阵
sig : 方程间误差协方差的西格玛矩阵
resids : n x n_eq残差数组
corr : 方程间3SLS误差相关矩阵
tsls_inf : 标准误差渐近t和p值字典,

每个方程一个

joinrho : 空间自回归系数联合显著性检验

带测试统计的元组,自由度,p值

surchow : 回归系数Chow检验的元组列表

每个元组包含测试值、自由度、p值

name_w : 字符串;空间权重的名称
name_ds : 字符串;数据集的名称
name_bigy : 每个方程的因变量名称字典
name_bigX : 字典,每个字典都有解释变量的名称

方程式

name_bigyend : 字典,每个字典都有内生变量的名称

方程式

name_bigq : 每种仪器变量名称的字典

方程

__init__(bigy, bigX, bigyend=None, bigq=None, w=None, regimes=None, vm=False, regime_lag_sep=False, w_lags=1, lag_q=True, nonspat_diag=True, spat_diag=False, name_bigy=None, name_bigX=None, name_bigyend=None, name_bigq=None, name_ds=None, name_w=None, name_regimes=None)[源代码]

初始化自身。请参阅帮助(键入(self))以获得准确的签名。

方法

__init__ \(bigy,bigx[,bigyend,bigq,w,…]) 初始化自身。