pysal.lib.weights.
Kernel
(data, bandwidth=None, fixed=True, k=2, function='triangular', eps=1.0000001, ids=None, diagonal=False, distance_metric='euclidean', radius=None, **kwargs)[源代码]¶基于核函数的空间权重。
参数: |
|
---|
实例
>>> points=[(10, 10), (20, 10), (40, 10), (15, 20), (30, 20), (30, 30)]
>>> kw=Kernel(points)
>>> kw.weights[0]
[1.0, 0.500000049999995, 0.4409830615267465]
>>> kw.neighbors[0]
[0, 1, 3]
>>> kw.bandwidth
array([[20.000002],
[20.000002],
[20.000002],
[20.000002],
[20.000002],
[20.000002]])
>>> kw15=Kernel(points,bandwidth=15.0)
>>> kw15[0]
{0: 1.0, 1: 0.33333333333333337, 3: 0.2546440075000701}
>>> kw15.neighbors[0]
[0, 1, 3]
>>> kw15.bandwidth
array([[15.],
[15.],
[15.],
[15.],
[15.],
[15.]])
用户指定的自适应带宽
>>> bw=[25.0,15.0,25.0,16.0,14.5,25.0]
>>> kwa=Kernel(points,bandwidth=bw)
>>> kwa.weights[0]
[1.0, 0.6, 0.552786404500042, 0.10557280900008403]
>>> kwa.neighbors[0]
[0, 1, 3, 4]
>>> kwa.bandwidth
array([[25. ],
[15. ],
[25. ],
[16. ],
[14.5],
[25. ]])
内生自适应带宽
>>> kwea=Kernel(points,fixed=False)
>>> kwea.weights[0]
[1.0, 0.10557289844279438, 9.99999900663795e-08]
>>> kwea.neighbors[0]
[0, 1, 3]
>>> kwea.bandwidth
array([[11.18034101],
[11.18034101],
[20.000002 ],
[11.18034101],
[14.14213704],
[18.02775818]])
高斯核内生自适应带宽
>>> kweag=Kernel(points,fixed=False,function='gaussian')
>>> kweag.weights[0]
[0.3989422804014327, 0.2674190291577696, 0.2419707487162134]
>>> kweag.bandwidth
array([[11.18034101],
[11.18034101],
[20.000002 ],
[11.18034101],
[14.14213704],
[18.02775818]])
对角线到1.0
>>> kq = Kernel(points,function='gaussian')
>>> kq.weights
{0: [0.3989422804014327, 0.35206533556593145, 0.3412334260702758], 1: [0.35206533556593145, 0.3989422804014327, 0.2419707487162134, 0.3412334260702758, 0.31069657591175387], 2: [0.2419707487162134, 0.3989422804014327, 0.31069657591175387], 3: [0.3412334260702758, 0.3412334260702758, 0.3989422804014327, 0.3011374490937829, 0.26575287272131043], 4: [0.31069657591175387, 0.31069657591175387, 0.3011374490937829, 0.3989422804014327, 0.35206533556593145], 5: [0.26575287272131043, 0.35206533556593145, 0.3989422804014327]}
>>> kqd = Kernel(points, function='gaussian', diagonal=True)
>>> kqd.weights
{0: [1.0, 0.35206533556593145, 0.3412334260702758], 1: [0.35206533556593145, 1.0, 0.2419707487162134, 0.3412334260702758, 0.31069657591175387], 2: [0.2419707487162134, 1.0, 0.31069657591175387], 3: [0.3412334260702758, 0.3412334260702758, 1.0, 0.3011374490937829, 0.26575287272131043], 4: [0.31069657591175387, 0.31069657591175387, 0.3011374490937829, 1.0, 0.35206533556593145], 5: [0.26575287272131043, 0.35206533556593145, 1.0]}
属性: |
|
---|
方法
asymmetry \([固有]) |
不对称检查。 |
from_adjlist \(adjlist [,focal u col,…]) |
返回权重对象的相邻列表表示形式。 |
from_array \(数组,**kwargs) |
从数组构造一个内核权重。 |
from_dataframe \(df [,geom u col,id ]) |
从数据帧中进行内核权重。 |
from_networkx \(图表[,权重列]) |
将networkx图转换为pysal w对象。 |
from_shapefile \(文件路径[,idvariable ]) |
shapefile中基于内核的权重 |
full () |
生成完整的numpy数组。 |
get_transform () |
转换属性的getter。 |
plot \(gdf [,indexed on ,ax ,color ,node kws ,…]) |
绘制空间权重对象。 |
remap_ids [新的IIDS ] |
全程就地修改 W 的ID值来自 w.id_order 到 new_ids 总共 |
set_shapefile \(shapefile [,idvariable ,full ]) |
添加用于写入gal和gwt文件头的元数据。 |
set_transform [(值)] |
权重转换。 |
symmetrize \([就地]) |
构造对称的knn权重。 |
to_WSP () |
生成一个wsp对象。 |
to_adjlist \([删除对称,焦点列,…]) |
计算权重对象的邻接列表表示。 |
to_networkx () |
将权重对象转换为NetworkX图形 |
from_WSP | |
from_file |
__init__
(data, bandwidth=None, fixed=True, k=2, function='triangular', eps=1.0000001, ids=None, diagonal=False, distance_metric='euclidean', radius=None, **kwargs)[源代码]¶初始化自身。请参阅帮助(键入(self))以获得准确的签名。
方法
__init__ \(数据[,带宽,固定,K,…]) |
初始化自身。 |
asymmetry \([固有]) |
不对称检查。 |
from_WSP \(wsp [,静音警告]) |
|
from_adjlist \(adjlist [,focal u col,…]) |
返回权重对象的相邻列表表示形式。 |
from_array \(数组,**kwargs) |
从数组构造一个内核权重。 |
from_dataframe \(df [,geom u col,id ]) |
从数据帧中进行内核权重。 |
from_file \([路径,格式]) |
|
from_networkx \(图表[,权重列]) |
将networkx图转换为pysal w对象。 |
from_shapefile \(文件路径[,idvariable ]) |
shapefile中基于内核的权重 |
full () |
生成完整的numpy数组。 |
get_transform () |
转换属性的getter。 |
plot \(gdf [,indexed on ,ax ,color ,node kws ,…]) |
绘制空间权重对象。 |
remap_ids [新的IIDS ] |
全程就地修改 W 的ID值来自 w.id_order 到 new_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\) . |