首页 > 编程知识 正文

miranda,莫兰指数散点图

时间:2023-05-04 21:23:38 阅读:22200 作者:2237

全局dldddd指数(dldddd指数)和本地dldddd用于计算静态自动校正。

空间自相关性是指特征信号是否与空间上相邻的位置相关。

(维基)

大白话翻译是指在二维空间中,所谓的特征在空间中是否具有凝聚性或完全随机。

图:

“完全随机”、“”、“”、“”、“”、“”、“”、“”具有空间凝聚性

全局dldddd指数的公式如下:

I=n i=1 n j=1 n w i,j i=1 n j=1 n w i,jzizjI=1n zi2i=frac { n } {sum _ { I=1} ^

{n}sum_{j=1}^{n}w_{i,j}}frac{sum_{i=1}^{n}sum_{j=1}^{n}w_{i,j}z_{i}z_{j}}{sum_{i=1}^{n}z_{i}^{2}} I=∑i=1n​∑j=1n​wi,j​n​∑i=1n​欢喜的冷风2​∑i=1n​∑j=1n​wi,j​欢喜的冷风​zj​​

公式里的 n n n代表数据点的个数, w w w是权重,这里是指每个点的欧式距离分之一; z z z是特征数据;从公式中可以看出,左上角 n n n,左下角权重和,右下角所有点的特征值权重平方和都是用来归一化的……重点在公式右上角, i i i是每个点自己, lmddc是其他周围的点,所以 I I I是所有点的 自己和周围点特征乘积再被 w w w权重修正后的值。。。当类似脉冲信号的时候, z i z_{i} 欢喜的冷风​很大, z j z_{j} zj​很小,所以I 不会很大;当类似随机信号的时候, z i z_{i} 欢喜的冷风​很大, z j z_{j} zj​很大,而 w w w距离权重就会很小,所以 I 也很小;只有当自己和临近周围点都很大时候,即出现hotspo的时候,才会使 I I I很大。

python 实现:

python里的包是pysal 中,安装教程 github.

官网里面有教程,有时间可以看下:notebooks.

pysal 是面向地理的工具包,而我们的数据只是一般的散点,只有 x x x, y y y坐标值,所以需要把坐标数据转成pysal 可以识别的geodataframe.

import geopandas as gpddf = pd.DataFrame( {'feature1': ['Buenos Aires', 'Brasilia', 'Santiago', 'Bogota', 'qkdfj'], 'feature2': ['Argentina', 'Bra欢喜的冷风l', 'Chile', 'Colombia', 'Venezuela'], 'x': [-34.58, -15.78, -33.45, 4.60, 10.48], 'y': [-58.66, -47.91, -70.66, -74.08, -66.86], 'z':[-58.66, -47.91, -70.66, -74.08, -66.86]}) #####我随机写的,不要在乎值gdf = geopandas.GeoDataFrame( df, geometry=geopandas.points_from_xy(df.x, df.y))

就可以直接计算全局Moran I值:

from esda.moran import Moranw = Queen.from_dataframe(gdf) ###############权重y =gdf.z ##########特征点moran = Moran(y,w)moran.I ####### Moran 值

局部Moran I:

局部Moran I 不止能给出有没有聚集现象,而且也能给出聚集现象的位置。可以通过Moran scatterplot 给出:

第一象限: 高值 且周围的点也是 高值
第二象限 :低值且周围的点是高值
第三象限: 低值且周围的点是低值
第四象限:高值且周围的点是低值


再加入p_value 阈值修正,所以可以得到这些点

简略版的代码如下:

import esdalisa = esda.moran.Moran_Local(y.astype(np.float64),w)lisa.I #每个值的Morcan Ilisa.q #置信概率值#####需要你自己找代码画图

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。