pysal.model.mgwr.sel_bw.Sel_BW

class pysal.model.mgwr.sel_bw.Sel_BW(coords, y, X_loc, X_glob=None, family=<pysal.model.spglm.family.Gaussian object>, offset=None, kernel='bisquare', fixed=False, multi=False, constant=True, spherical=False)[源代码]

为内核选择带宽

方法:P211-P213,Fotheringham,A.S.,Brunsdon,C.和Charlton,M.(2002)。地理加权回归:对空间变化关系的分析。

参数:
y : 数组

n*1,因变量。

X_glob : 数组

n*k1,固定自变量。

X_loc : 数组

n*k2,局部自变量,包括常数。

坐标 : 元组列表

带宽选择中使用的点的(x,y)

family : 一串

GWR模型类型:“高斯”、“逻辑”、“泊松”

offset : 数组

n*1,第i个位置的偏移变量。对于泊松模型,这个术语通常是风险人群的大小,或者空间流行病学默认结果的预期大小为“无”,其中所有位置的ni都变为1.0。

kernel : 一串

核函数:“高斯”、“双夸尔”、“导出”

fixed : 布尔

固定带宽为真,自适应为假(nn)

multi : 对于多个(协变特异性)带宽为真

对于传统的(所有共变的)带宽来说是错误的;defualt是错误的。

constant : 布尔

在模型中包含截获(默认值)为true,排除截获为false。

spherical : 布尔

周坐标(长lat)为真,投影坐标(defalut)为假。

实例

>>> import pysal.lib as ps
>>> from mgwr.sel_bw import Sel_BW
>>> data = ps.io.open(ps.examples.get_path('GData_utm.csv'))
>>> coords = list(zip(data.by_col('X'), data.by_col('Y')))
>>> y = np.array(data.by_col('PctBach')).reshape((-1,1))
>>> rural = np.array(data.by_col('PctRural')).reshape((-1,1))
>>> pov = np.array(data.by_col('PctPov')).reshape((-1,1))
>>> african_amer = np.array(data.by_col('PctBlack')).reshape((-1,1))
>>> X = np.hstack([rural, pov, african_amer])

黄金分割搜索

>>> bw = Sel_BW(coords, y, X).search(criterion='AICc')
>>> print(bw)
93.0

黄金分割搜索AIC-自适应高斯

>>> bw = Sel_BW(coords, y, X, kernel='gaussian').search(criterion='AIC')
>>> print(bw)
50.0

黄金分割搜索BIC-自适应高斯

>>> bw = Sel_BW(coords, y, X, kernel='gaussian').search(criterion='BIC')
>>> print(bw)
62.0

黄金分割搜索cv-自适应高斯

>>> bw = Sel_BW(coords, y, X, kernel='gaussian').search(criterion='CV')
>>> print(bw)
68.0

区间AICC-固定双夸克

>>> sel = Sel_BW(coords, y, X, fixed=True)
>>> bw = sel.search(search_method='interval', bw_min=211001.0, bw_max=211035.0, interval=2)
>>> print(bw)
211025.0
属性:
y : 数组

n*1,因变量。

X_glob : 数组

n*k1,固定自变量。

X_loc : 数组

n*k2,局部自变量,包括常数。

坐标 : 元组列表

带宽选择中使用的点的(x,y)

family : 一串

GWR模型类型:“高斯”、“逻辑”、“泊松”

kernel : 一串

使用的内核类型以及是否固定或自适应

fixed : 布尔

固定带宽为真,自适应为假(nn)

criterion : 一串

BW选择标准:“AICC”、“AIC”、“BIC”、“CV”

search_method : 一串

bw搜索方法:“golden”、“interval”

bw_min : 浮动

带宽搜索中使用的最小值

bw_max : 浮动

带宽搜索中使用的最大值

interval : 浮动

间隔搜索中使用的间隔增量

tol : 浮动

用于确定收敛性的公差

max_iter : 整数

不收敛到tol时的最大交互

multi : 对于多个(协变特异性)带宽为真

对于传统的(所有共变的)带宽来说是错误的;defualt是错误的。

constant : 布尔

在模型中包含截获(默认值)为true,排除截获为false。

offset : 数组

n*1,第i个位置的偏移变量。对于泊松模型,这个术语通常是风险人群的大小,或者空间流行病学默认结果的预期大小为“无”,其中所有位置的ni都变为1.0。

dmat : 数组

n*n,用于计算重量矩阵的校准位置之间的距离矩阵

sorted_dmat : 数组

n*n,用于计算重量矩阵的校准位置之间的排序距离矩阵。对于固定带宽将为零

spherical : 布尔

周坐标(长lat)为真,投影坐标(defalut)为假。

search_params : 双关语

存储搜索参数

int_score : 布兰

如果使用自适应带宽,并且选择的带宽应该是离散的,则为真。如果使用固定带宽且带宽不必是离散的,则为false。

bw : 标量或类似数组

导出最佳带宽。将是gwr的标量(multi=false)和mgwr的标量列表(multi=true),每个协变量有一个带宽。

S : 数组

n*n,带宽选择时由mgwr的迭代逆火算法导出的hat矩阵

R : 数组

n*n*k,在带宽选择过程中,从MGWR的迭代逆算法推导出的部分hat矩阵。对于每个k协变量都有一个n*n矩阵。

params : 数组

n*k,基于迭代回火算法的MGWR校准参数估计-计算并保存在此处,以避免在MGWR对象中再次进行此操作。

方法

search \([搜索方法,标准,bw 最小,…]) 方法为GWR模型选择一个唯一带宽,或为MGWR模型选择一个带宽向量。
__init__(coords, y, X_loc, X_glob=None, family=<pysal.model.spglm.family.Gaussian object>, offset=None, kernel='bisquare', fixed=False, multi=False, constant=True, spherical=False)[源代码]

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

方法

__init__ \(coords,y,xu loc[,xu glob,family,…]) 初始化自身。
search \([搜索方法,标准,bw 最小,…]) 方法为GWR模型选择一个唯一带宽,或为MGWR模型选择一个带宽向量。