千家信息网

利用Python计算空间局部自相关的方法

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇内容介绍了"利用Python计算空间局部自相关的方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成
千家信息网最后更新 2025年02月03日利用Python计算空间局部自相关的方法

本篇内容介绍了"利用Python计算空间局部自相关的方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

局部空间自相关

import esda  import numpy as npimport pandas as pdimport libpysal as lpsimport geopandas as gpdimport contextily as ctximport matplotlib.pyplot as pltfrom geopandas import GeoDataFramefrom shapely.geometry import Pointfrom pylab import figure, scatter, showfrom splot.esda import moran_scatterplotfrom esda.moran import Moran_Localfrom splot.esda import plot_moranfrom splot.esda import lisa_clusterfrom splot.esda import plot_local_autocorrelation%matplotlib inline
root_dir="/home/lighthouse/Learning/pysal/"
gdf = gpd.read_file(root_dir+'data/.shp') # 读取数据

数据概况

gdf.columns.values  #字段名
array(['CODE', 'COUNT', 'SUM_AREA', 'FIRST_ANAM', 'OID_', 'CODE_1',       'DATAFLAG', 'TOTPOP', 'TOTPOP_10K', 'RURPOP_10K', 'TOWNPOP_10',       'AGRPRODUCT', 'AGRLBR_10K', 'AGRSTOTGDP', 'FSTGDPRATE',       'SCNDGDPRAT', 'THRDGDPRAT', 'Province', 'geometry'], dtype=object)
gdf.head(1)

计算局部空间自相关LISA

  • 第一产业占GDP比重FSTGDPRATE为变量

ax=gdf.plot(figsize=(8,8),column="FSTGDPRATE",scheme='Quantiles', k=5, cmap='GnBu', legend=True,)ax.set_axis_off()

计算空间权重矩阵

  • pysal中的局部自相关计算中,要求权重矩阵的每一个元素都有邻接元素

y = gdf['FSTGDPRATE'].valuesw = lps.weights.distance.Kernel.from_dataframe(gdf, fixed=False, k=15)w.transform = 'r'
  • Local Moral 计算

moran_loc = Moran_Local(y, w)
  • Local Moral 散点图

fig, ax = moran_scatterplot(moran_loc, p=0.05)ax.set_xlabel('FSTGDPRATE')ax.set_ylabel('Spatial Lag of FSTGDPRATE')plt.show()

  • 聚集区的空间分布

lisa_cluster(moran_loc, gdf, p=0.05, figsize = (9,9))plt.show()

  • 根据上图结果可以看出,图中西部为高值聚集区,东部为低值聚集区。高值聚集区的第一产业产值占比比较高,而低值聚集区的第一产业产值占比比较低,这可以反映出区域的经济发展水平的空间异质性,区域发展不均衡。

  • 绘制结果组合图

plot_local_autocorrelation(moran_loc, gdf, 'FSTGDPRATE')plt.show()

"利用Python计算空间局部自相关的方法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

0