高/低聚类(Getis-Ord General G) (空间统计)

摘要

使用 Getis-Ord General G 统计可度量高值或低值的聚类程度。

You can access the results of this tool (including the optional report file) from the Results window. If you disable background processing, results will also be written to the Progress dialog box.

了解有关高/低聚类:Getis-Ord General G 工作原理的详细信息

插图

High/Low Clustering (Getis-Ord General G) illustration

用法

语法

HighLowClustering_stats (Input_Feature_Class, Input_Field, Generate_Report, Conceptualization_of_Spatial_Relationships, Distance_Method, Standardization, Distance_Band_or_Threshold_Distance, {Weights_Matrix_File})
参数说明数据类型
Input_Feature_Class

将计算 General G 统计的要素类。

Feature Layer
Input_Field

要评估的数值字段。

Field
Generate_Report
  • NO_REPORT不会创建图形汇总(默认值)。
  • GENERATE_REPORT图形汇总将以 HTML 文件形式创建。
Boolean
Conceptualization_of_Spatial_Relationships

指定要素空间关系的概念化方式。

  • INVERSE_DISTANCE与远处的要素相比,附近的邻近要素对目标要素的计算的影响要大一些。
  • INVERSE_DISTANCE_SQUARED与 INVERSE_DISTANCE 类似,但它的坡度更明显,因此影响下降得更快,并且只有目标要素的最近邻域会对要素的计算产生重大影响。
  • FIXED_DISTANCE_BAND将对邻近要素环境中的每个要素进行分析。在指定临界距离内的邻近要素将分配值为 1 的权重,并对目标要素的计算产生重大影响。在指定临界距离外的邻近要素将分配值为零的权重,并且不会对目标要素的计算产生任何影响。
  • ZONE_OF_INDIFFERENCE在目标要素的指定临界距离内的要素将分配值为 1 的权重,并且会影响目标要素的计算。一旦超出该临界距离,权重(以及邻近要素对目标要素计算的影响)就会随距离的增加而减小。
  • POLYGON_CONTIGUITY_(FIRST_ORDER)只有共用边界的邻近面要素会影响目标面要素的计算。(需要 ArcInfo 级别许可)
  • GET_SPATIAL_WEIGHTS_FROM_FILE将在空间权重文件中定义空间关系。指向空间权重文件的路径在“权重矩阵文件”参数中指定。
String
Distance_Method

指定计算每个要素与邻近要素之间的距离的方式。

  • EUCLIDEAN_DISTANCE两点间的直线距离
  • MANHATTAN_DISTANCE沿垂直轴度量的两点间的距离(城市街区);计算方法是对两点的 x 和 y 坐标的差值(绝对值)求和。
String
Standardization

当要素的分布由于采样设计或施加的聚合方案而可能偏离时,建议使用行标准化。

  • NONE不对空间权重执行标准化。
  • ROW对空间权重执行标准化;每个权重都会除以行的和(所有相邻要素的权重和)。
String
Distance_Band_or_Threshold_Distance

为“反距离”和“固定距离”选项指定中断距离。将在对目标要素的分析中忽略为该要素指定的中断之外的要素。但是,对于“无差别的区域”,指定距离之外的要素的影响会随距离的减小而变弱,而在距离阈值之内的影响则被视为是等同的。输入的值应该与输出坐标系的值匹配。

对于空间关系的“反距离”概念化,值为 0 表示未应用任何阈值距离;当将此参数留空时,将计算并应用默认阈值。此默认值为确保每个要素至少具有一个邻域的欧氏距离。

如果选择了“面邻接”或者“通过文件获取空间权重”空间概念化,则此参数不会产生任何影响。

Double
Weights_Matrix_File
(可选)

指向包含空间权重(其定义要素间的空间关系)的文件的路径。

File

代码示例

高低聚类 (HighLowClustering) 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用“高/低聚类”工具。

import arcpy
arcpy.env.workspace = r"C:\data"
arcpy.HighLowClustering_stats("911Count.shp", "ICOUNT","false", "GET_SPATIAL_WEIGHTS_FROM_FILE","EUCLIDEAN_DISTANCE", "NONE","#", "euclidean6Neighs.swm")
高低聚类 (HighLowClustering) 示例 2(独立 Python 脚本)

以下独立 Python 脚本演示了如何使用“高/低聚类”工具。

# Analyze the spatial distribution of 911 calls in a metropolitan area
# using the High/Low Clustering (Getis-Ord General G) tool
 
# Import system modules
import arcpy
 
# Set the geoprocessor object property to overwrite existing outputs
arcpy.gp.overwriteOutput = True
 
# Local variables...
workspace = r"C:\Data"

try:
    # Set the current workspace (to avoid having to specify the full path to the feature classes each time)
    arcpy.env.workspace = workspace

    # Copy the input feature class and integrate the points to snap
    # together at 500 feet
    # Process: Copy Features and Integrate
    cf = arcpy.CopyFeatures_management("911Calls.shp", "911Copied.shp",
                         "#", 0, 0, 0)

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

    # Use Collect Events to count the number of calls at each location
    # Process: Collect Events
    ce = arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")

    # Add a unique ID field to the count feature class
    # Process: Add Field and Calculate Field
    af = arcpy.AddField_management("911Count.shp", "MyID", "LONG", "#", "#", "#", "#",
                     "NON_NULLABLE", "NON_REQUIRED", "#",
                     "911Count.shp")
    
    cf = arcpy.CalculateField_management("911Count.shp", "MyID", "[FID]", "VB")

    # Create Spatial Weights Matrix for Calculations
    # Process: Generate Spatial Weights Matrix... 
    swm = arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID",
                        "euclidean6Neighs.swm",
                        "K_NEAREST_NEIGHBORS",
                        "#", "#", "#", 6,
                        "NO_STANDARDIZATION") 

    # Cluster Analysis of 911 Calls
    # Process: High/Low Clustering (Getis-Ord General G)
    hs = arcpy.HighLowClustering_stats("911Count.shp", "ICOUNT", 
                        "false", 
                        "GET_SPATIAL_WEIGHTS_FROM_FILE",
                        "EUCLIDEAN_DISTANCE", "NONE",
                        "#", "euclidean6Neighs.swm")

except:
    # If an error occurred when running the tool, print out the error message.
    print arcpy.GetMessages()

环境

相关主题


7/10/2012