空間權重矩陣(SWM)

基本原理

如何利用數學(如用面積、距離等)創建空間數據和非空間數據之間的關係?對於空間統計而言,空間權重矩陣是一種有效的表達空間關係的方式。所以,它是用量化的方法表示了數據之間的「空間結構」。ide

關於如何進行要素間實際交互方式的概念化,ESRI舉出的例子:工具

若是要測量森林中某種特定種類的種子繁殖樹種的聚類,使用某種形式的反距離可能最適合。可是,若是要評估某一地區通勤者的地理分佈,行程時間和行程成本多是更好的選擇。idea

空間權重矩陣是N*N的表,N爲數據集中的要素數量。所以給定行列組合後,其對應的值即爲權重。這種空間關係的權重矩陣在許多空間統計工具裏都有用,好比空間自相關、熱點分析、聚類和異常值分析等。spa

建立策略

  1. 二進制策略:某個要素要麼是鄰域-1,要麼不是-0。例如:固定距離、K 最近鄰域、Delaunay 三角測量、鄰接或空間 - 時間窗口。
  2. 權重策略:鄰近要素有不一樣量級的影響,並經過計算權重來反映該變化。例如:反距離或無差異的區域。

工具使用

arcgis中的SWM使用稀疏矩陣存儲,所以只存非零部分。實際狀況,每一個要素通常只跟其餘某幾個要素髮生關係。code

工具名字:Generate Spatial Weights Matrix (Spatial Statistics),工具界面如圖:ip

clipboard.png

SWM的使用:以熱點分析爲例

具體權重的使用,以熱點分析爲例,幾個主要的步驟以下:數學

integrate與collect event

integrate = arcpy.Integrate_management("911Copied.shp #", "500 Feet")
ce = arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")

collect event的結果數據

重點是須要生成feature class,而且確保這個feature class有一個惟一id字段。event

af = arcpy.AddField_management("911Count.shp", "MyID", "LONG", "#", "#", "#", "#","NON_NULLABLE", "NON_REQUIRED", "#", "911Count.shp")
cf = arcpy.CalculateField_management("911Count.shp", "MyID", "[FID]", "VB")

Generate Spatial Weights Matrix

swm = arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID","euclidean6Neighs.swm","K_NEAREST_NEIGHBORS","#", "#", "#", 6,"NO_STANDARDIZATION")

Hot Spot Analysis (Getis-Ord Gi*)

hs = arcpy.HotSpots_stats("911Count.shp", "ICOUNT", "911HotSpots.shp","GET_SPATIAL_WEIGHTS_FROM_FILE","EUCLIDEAN_DISTANCE", "NONE","#", "#", "euclidean6Neighs.swm","NO_FDR")
相關文章
相關標籤/搜索