pysal.lib.weights.W

class pysal.lib.weights.W(neighbors, weights=None, id_order=None, silence_warnings=False, ids=None)[源代码]

空间权重类。

参数:
neighbors : 词典

键是区域ID,值是邻居ID的列表。示例:'A':['B']、'B':['A'、'C']、'C':['B']

砝码 : 词典

键是区域ID,值是边权重列表。如果未提供,则假设所有边权重都为1。示例:'A':[0.5],'B':[0.5,1.5],'C':[1.5]

id_order : 列表

ID的有序列表,定义了迭代w时的观察顺序。如果未设置,则使用字典顺序进行迭代,并且ID_order_set属性将返回false。这可以在创建后通过设置“id_order”属性进行设置。

静音岛警告:布尔值

默认情况下,如果数据集包含任何断开连接的观测值或孤岛,pysal.lib将打印警告。若要取消此警告,请将此参数设置为“真”。

silent_connected_components : 布尔

默认情况下,如果数据集在邻接矩阵中包含任何断开连接的组件,Pysal将打印警告。这些是断开的 groups 岛屿的若要取消此警告,请将此参数设置为“真”。

ids : 列表

用于相邻键和权重dict的值。

**属性(注意:这些属性由它们的docstring描述。要查看,请使用 help 函数* **
----------
asymmetries
cardinalities
component_labels
diagW2
diagWtW
diagWtW_WW
histogram
id2i
id_order
id_order_set
islands
max_neighbors
mean_neighbors
min_neighbors
n
n_components
neighbor_offsets
nonzero
pct_nonzero
s0
s1
s2
s2array
sd
稀疏的
trcW2
trcWtW
trcWtW_WW
transform

实例

>>> from pysal.lib.weights.weights import W
>>> neighbors = {0: [3, 1], 1: [0, 4, 2], 2: [1, 5], 3: [0, 6, 4], 4: [1, 3, 7, 5], 5: [2, 4, 8], 6: [3, 7], 7: [4, 6, 8], 8: [5, 7]}
>>> weights = {0: [1, 1], 1: [1, 1, 1], 2: [1, 1], 3: [1, 1, 1], 4: [1, 1, 1, 1], 5: [1, 1, 1], 6: [1, 1], 7: [1, 1, 1], 8: [1, 1]}
>>> w = W(neighbors, weights)
>>> "%.3f"%w.pct_nonzero
'29.630'

从外部gal文件读取

>>> import pysal.lib
>>> w = pysal.lib.io.open(pysal.lib.examples.get_path("stl.gal")).read()
>>> w.n
78
>>> "%.3f"%w.pct_nonzero
'6.542'

隐式设置权重

>>> neighbors = {0: [3, 1], 1: [0, 4, 2], 2: [1, 5], 3: [0, 6, 4], 4: [1, 3, 7, 5], 5: [2, 4, 8], 6: [3, 7], 7: [4, 6, 8], 8: [5, 7]}
>>> w = W(neighbors)
>>> round(w.pct_nonzero,3)
29.63
>>> from pysal.lib.weights import lat2W
>>> w = lat2W(100, 100)
>>> w.trcW2
39600.0
>>> w.trcWtW
39600.0
>>> w.transform='r'
>>> round(w.trcW2, 3)
2530.722
>>> round(w.trcWtW, 3)
2533.667

基数柱状图>>>w.柱状图[(2,4),(3,392),(4,9604)]

不连续观测(岛屿)

>>> from pysal.lib.weights import W
>>> w = W({1:[0],0:[1],2:[], 3:[]})

警告:有2个断开连接的观测岛ID:[2,3]

属性:
asymmetries

具有不对称权重的ID对列表。

cardinalities

每个观测点的邻居数。

component_labels

存储每个观察结果所在的图表组件。

diagW2

对角线 \(WW\) .

diagWtW

对角线 \(W^{{'}}W\) .

diagWtW_WW

对角线 \(W^{{'}}W + WW\) .

histogram

基数柱状图作为字典,其中键是ID,值是该单元的邻居数。

id2i

字典,其中键是一个ID,值是按w.id_顺序排列的ID索引。

id_order

返回观察值的ID,其顺序与迭代权重时遇到的顺序相同。

id_order_set

如果用户设置了id_顺序,则返回true;否则返回false。

islands

没有任何邻居的ID列表。

max_neighbors

邻居数量最多。

mean_neighbors

邻居的平均数目。

min_neighbors

最小邻居数。

n

单位数。

n_components

存储相邻矩阵是否完全连接。

neighbor_offsets

给定当前的id_顺序,neighbor_offsets[id]是id_顺序中id的邻居的偏移量。

nonzero

非零权重的数目。

pct_nonzero

非零权重的百分比。

s0

S0定义为

s1

S1定义为

s2

s2定义为

s2array

包含s2的单个元素。

sd

相邻数的标准差。

sparse

稀疏矩阵对象。

transform

转换属性的getter。

trcW2

痕迹 \(WW\) .

trcWtW

痕迹 \(W^{{'}}W\) .

trcWtW_WW

痕迹 \(W^{{'}}W + WW\) .

方法

asymmetry \([固有]) 不对称检查。
from_adjlist \(adjlist [,focal u col,…]) 返回权重对象的相邻列表表示形式。
from_networkx \(图表[,权重列]) 将networkx图转换为pysal w对象。
full () 生成完整的numpy数组。
get_transform () 转换属性的getter。
plot \(gdf [,indexed on ,ax ,color ,node kws ,…]) 绘制空间权重对象。
remap_ids [新的IIDS ] 全程就地修改 W 的ID值来自 w.id_ordernew_ids 总共
set_shapefile \(shapefile [,idvariable ,full ]) 添加用于写入gal和gwt文件头的元数据。
set_transform [(值)] 权重转换。
symmetrize \([就地]) 构造对称的knn权重。
to_WSP () 生成一个wsp对象。
to_adjlist \([删除对称,焦点列,…]) 计算权重对象的邻接列表表示。
to_networkx () 将权重对象转换为NetworkX图形
from_WSP  
from_file  
from_shapefile  
__init__(neighbors, weights=None, id_order=None, silence_warnings=False, ids=None)[源代码]

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

方法

__init__ \(邻居[,权重,ID 订购,…]) 初始化自身。
asymmetry \([固有]) 不对称检查。
from_WSP \(wsp [,静音警告])
from_adjlist \(adjlist [,focal u col,…]) 返回权重对象的相邻列表表示形式。
from_file \([路径,格式])
from_networkx \(图表[,权重列]) 将networkx图转换为pysal w对象。
from_shapefile \(*args,*kwargs)
full () 生成完整的numpy数组。
get_transform () 转换属性的getter。
plot \(gdf [,indexed on ,ax ,color ,node kws ,…]) 绘制空间权重对象。
remap_ids [新的IIDS ] 全程就地修改 W 的ID值来自 w.id_ordernew_ids 总共
set_shapefile \(shapefile [,idvariable ,full ]) 添加用于写入gal和gwt文件头的元数据。
set_transform [(值)] 权重转换。
symmetrize \([就地]) 构造对称的knn权重。
to_WSP () 生成一个wsp对象。
to_adjlist \([删除对称,焦点列,…]) 计算权重对象的邻接列表表示。
to_networkx () 将权重对象转换为NetworkX图形

属性

asymmetries  具有不对称权重的ID对列表。
cardinalities  每个观测点的邻居数。
component_labels  存储每个观察结果所在的图表组件。
diagW2  对角线 \(WW\) .
diagWtW  对角线 \(W^{{'}}W\) .
diagWtW_WW  对角线 \(W^{{'}}W + WW\) .
histogram  基数柱状图作为字典,其中键是ID,值是该单元的邻居数。
id2i  字典,其中键是一个ID,值是按w.id_顺序排列的ID索引。
id_order  返回观察值的ID,其顺序与迭代权重时遇到的顺序相同。
id_order_set  如果用户设置了id_顺序,则返回true;否则返回false。
islands  没有任何邻居的ID列表。
max_neighbors  邻居数量最多。
mean_neighbors  邻居的平均数目。
min_neighbors  最小邻居数。
n  单位数。
n_components  存储相邻矩阵是否完全连接。
neighbor_offsets  给定当前的id_顺序,neighbor_offsets[id]是id_顺序中id的邻居的偏移量。
nonzero  非零权重的数目。
pct_nonzero  非零权重的百分比。
s0  S0定义为
s1  S1定义为
s2  s2定义为
s2array  包含s2的单个元素。
sd  相邻数的标准差。
sparse  稀疏矩阵对象。
transform  转换属性的getter。
trcW2  痕迹 \(WW\) .
trcWtW  痕迹 \(W^{{'}}W\) .
trcWtW_WW  痕迹 \(W^{{'}}W + WW\) .