pysal.lib.weights.higher_order_sp

pysal.lib.weights.higher_order_sp(w, k=2, shortest_path=True, diagonal=False)[源代码]

稀疏W的邻接权重或顺序K的邻接权重。

参数:
w : W

稀疏矩阵、空间权重对象或scipy.sparse.csr.csr实例

k : 利息

相邻顺序

shortest_path : 布尔

对:i,j和k阶邻域,如果i,j的最短路径为k,那么j是k阶邻域,如果i,j的长度为k,那么i,j是k阶邻域。

diagonal : 布尔

正确:当i==j时保持k阶(i,j)连接错误:当i==j时删除k阶(i,j)连接

返回:
wk : W

wsp,类型与w参数的类型匹配

笔记

低阶连续性被移除。

实例

>>> from pysal.lib.weights import lat2W
>>> import pysal.lib
>>> w25 = lat2W(5,5)
>>> w25.n
25
>>> w25[0] == {1: 1.0, 5: 1.0}
True
>>> w25_2 = pysal.lib.weights.util.higher_order_sp(w25, 2)
>>> w25_2[0] == {10: 1.0, 2: 1.0, 6: 1.0}
True
>>> w25_2 = pysal.lib.weights.util.higher_order_sp(w25, 2, diagonal=True)
>>> w25_2[0] ==  {0: 1.0, 10: 1.0, 2: 1.0, 6: 1.0}
True
>>> w25_3 = pysal.lib.weights.util.higher_order_sp(w25, 3)
>>> w25_3[0] == {15: 1.0, 3: 1.0, 11: 1.0, 7: 1.0}
True
>>> w25_3 = pysal.lib.weights.util.higher_order_sp(w25, 3, shortest_path=False)
>>> w25_3[0] == {1: 1.0, 3: 1.0, 5: 1.0, 7: 1.0, 11: 1.0, 15: 1.0}
True