pysal.lib.weights.
lag_spatial
(w, y)[源代码]¶空间滞后运算符。
如果w是行标准化的,则返回每个观测的邻居的平均值;如果不是,则返回每个观测的邻居的加权和。
参数: |
|
---|---|
返回: |
|
实例
设置9x9二进制空间权重矩阵和数据向量;计算向量的空间滞后。
>>> import pysal.lib
>>> import numpy as np
>>> w = pysal.lib.weights.lat2W(3, 3)
>>> y = np.arange(9)
>>> yl = pysal.lib.weights.spatial_lag.lag_spatial(w, y)
>>> yl
array([ 4., 6., 6., 10., 16., 14., 10., 18., 12.])
行标准化权重矩阵并重新计算空间滞后
>>> w.transform = 'r'
>>> yl = pysal.lib.weights.spatial_lag.lag_spatial(w, y)
>>> yl
array([2. , 2. , 3. , 3.33333333, 4. ,
4.66666667, 5. , 6. , 6. ])
将数据向量显式定义为9x1并重新计算空间延迟
>>> y.shape = (9, 1)
>>> yl = pysal.lib.weights.spatial_lag.lag_spatial(w, y)
>>> yl
array([[2. ],
[2. ],
[3. ],
[3.33333333],
[4. ],
[4.66666667],
[5. ],
[6. ],
[6. ]])
以9x2数据矩阵的空间滞后为例
>>> yr = np.arange(8, -1, -1)
>>> yr.shape = (9, 1)
>>> x = np.hstack((y, yr))
>>> yl = pysal.lib.weights.spatial_lag.lag_spatial(w, x)
>>> yl
array([[2. , 6. ],
[2. , 6. ],
[3. , 5. ],
[3.33333333, 4.66666667],
[4. , 4. ],
[4.66666667, 3.33333333],
[5. , 3. ],
[6. , 2. ],
[6. , 2. ]])