高/低聚类(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.
插图
用法
-
“高/低聚类”工具可返回五个值:General G 观测值、General G 期望值、方差、z 得分及 p 值。通过结果窗口可访问这些值,也可以将这些值作为派生输出值传递,以满足模型或脚本中的潜在使用需要。或者,此工具会创建一个 HTML 文件,其中包含结果的图形汇总。双击结果 窗口中的 HTML 文件,将在默认的 Internet 浏览器中打开该 HTML 文件。右键单击结果 窗口中的消息条目并选择查看后,将在消息对话框中显示结果。
注:- 当此工具是自定义模型工具的一部分时,如果在运行工具之前将 HTML 链接设置为模型参数,则 HTML 链接将仅在结果 窗口中显示。
- 为了获得 HTML 图形的最佳显示效果,请确保已将监视器设置为 96 DPI。
-
输入字段应包含多种非负值。如果输入字段包含负值,将显示错误消息。此外,此统计数学方法要求待分析的变量存在一定程度的变化;例如,如果所有输入都是 1 便无法求解。如果要使用此工具分析事件数据的空间模式,应考虑聚合事件数据。
-
z 得分基于随机化零假设进行计算。有关 z 得分的详细信息,请参阅什么是 z 得分?什么是 p 值?
-
z 得分越高(或越低),聚类程度就越高。如果 z 得分接近零,则表示研究区域内不存在明显的聚类。z 得分为正表示高值的聚类。z 得分为负表示低值的聚类。
-
基于欧氏距离或者曼哈顿距离的计算需要投影数据来准确测量距离。
-
对于线和面要素,会在距离计算中使用要素质心。对于多点、折线 (polyline) 或由多部分组成的面,使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
-
在 ArcGIS 10 中,将不再自动显示任选的图形输出。而是将创建 HTML 文件汇总结果。要查看结果,请在结果窗口中双击 HTML 文件。在 ArcGIS 10 之前创建的使用此工具的自定义脚本或模型工具可能需要重新构建。要重新构建这些自定义工具,请打开这些工具,移除以图形方式显示结果参数,然后重新保存。
This tool will optionally create an HTML file summarizing results. HTML files will not automatically appear in the Catalog window. If you want HTML files to be displayed in Catalog, open the ArcCatalog application, select the Customize menu option, click ArcCatalog Options, and select the File Types tab. Click on the New Type button and specify HTML for File Extension.
-
空间关系的概念化参数的选择应反映要分析的要素之间的固有关系。对要素在空间中彼此交互方式构建的模型越逼真,结果就越准确。这些建议在选择空间关系的概念化:最佳做法中进行了概述。以下是一些额外提示:
- 建议针对此统计使用二进制权重方案:固定距离、面邻接、K 最近邻或 Delaunay 三角测量。为标准化参数选择 NONE。
- FIXED_DISTANCE_BAND
The default Distance Band or Threshold Distance will ensure each feature has at least one neighbor, and this is important. But often, this default will not be the most appropriate distance to use for your analysis. Additional strategies for selecting an appropriate scale (distance band) for your analysis are outlined in Selecting a fixed distance band value.
- INVERSE_DISTANCE 或 INVERSE_DISTANCE_SQUARED(不建议使用)
如果针对距离范围或距离阈值参数输入 0,则所有要素均将视为所有其他要素的相邻要素;如果将此参数留空,则将采用默认距离阈值。
如果距离权重小于 1 将会变得不稳定。对于分隔距离小于一个单位的要素的权重(常见于地理坐标系投影)为 1。
警告:如果选择使用任何基于反距离的空间概念化方法(INVERSE_DISTANCE、INVERSE_DISTANCE_SQUARED 或者 ZONE_OF_INDIFFERENCE),则不建议对具有地理坐标系投影的要素进行分析。
对于反距离选项(不建议对此工具使用),为避免产生除数为零的情况,任何重合两点的权重值均将指定为 1。这样便可确保将要素包含在分析之内。
-
空间关系的概念化参数的附加选项在使用生成空间权重矩阵或者生成网络空间权重工具时可用。要利用这些附加选项,请使用上述工具之一构造空间权重矩阵文件,然后进行分析;为空间关系的概念化参数选择 GET_SPATIAL_WEIGHTS_FROM_FILE;为权重矩阵文件参数指定到您创建的空间权重文件的路径。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
- 当此工具是自定义模型工具的一部分时,如果在运行工具之前将 HTML 链接设置为模型参数,则 HTML 链接将仅在结果 窗口中显示。
- 为了获得 HTML 图形的最佳显示效果,请确保已将监视器设置为 96 DPI。
- ASCII 格式的空间权重矩阵文件:
- 权重“按原样”使用。缺失的要素与要素之间的关系被视为零。
- 如果对权重进行了行标准化,则选择集的分析结果很有可能不正确。如果需要对选择集运行分析,则通过以下方法将 ASCII 空间权重文件转换为 .swm 文件:将 ASCII 数据读入表,然后将 CONVERT_TABLE 选项与生成空间权重矩阵工具结合使用。
- .SWM 格式的空间权重矩阵文件
- 如果对权重进行了行标准化,则会将其选择集重新标准化。否则将“按原样”使用权重。
使用 ASCII 格式的空间权重矩阵文件运行您的分析会占用大量内存。如果要分析的要素超过 5000 个,则考虑将 ASCII 格式的空间权重矩阵文件转换为 .swm 格式的文件。首先,将 ASCII 权重置入一个带格式的表中(例如,使用 Excel)。接下来运行生成空间权重矩阵工具,并使用空间关系的概念化参数的 CONVERT_TABLE。输出将是 .swm 格式化的空间权重矩阵文件。
-
空间关系建模帮助主题提供了有关此工具的参数的附加信息。
如果为权重矩阵文件提供 .SWM 或 .swm 扩展名,则此工具将预期通过使用生成空间权重矩阵或生成网络空间权重工具创建的空间权重矩阵文件。否则,此工具将预期 ASCII 格式的空间权重矩阵文件。在某些情况下,工具行为将根据所使用的空间矩阵文件类型的不同而有所区别:
在使用 shapefile 时,请注意 shapefile 无法存储空值。根据非 shapefile 输入创建 shapefile 的工具或其他过程可能会将空值存储(或解析)为零。这会产生意外的结果。另请参阅 shapefile 输出的地理处理注意事项。
在 ArcGIS 9.2 中,“全局”标准化选项已被移除。全局标准化返回的结果与不执行标准化相同。通过 ArcGIS 较早版本构建的使用全局标准化选项的模型可能需要重新进行构建。
语法
参数 | 说明 | 数据类型 |
Input_Feature_Class |
将计算 General G 统计的要素类。 | Feature Layer |
Input_Field |
要评估的数值字段。 | Field |
Generate_Report |
| Boolean |
Conceptualization_of_Spatial_Relationships |
指定要素空间关系的概念化方式。
| String |
Distance_Method |
指定计算每个要素与邻近要素之间的距离的方式。
| String |
Standardization |
当要素的分布由于采样设计或施加的聚合方案而可能偏离时,建议使用行标准化。
| String |
Distance_Band_or_Threshold_Distance |
为“反距离”和“固定距离”选项指定中断距离。将在对目标要素的分析中忽略为该要素指定的中断之外的要素。但是,对于“无差别的区域”,指定距离之外的要素的影响会随距离的减小而变弱,而在距离阈值之内的影响则被视为是等同的。输入的值应该与输出坐标系的值匹配。 对于空间关系的“反距离”概念化,值为 0 表示未应用任何阈值距离;当将此参数留空时,将计算并应用默认阈值。此默认值为确保每个要素至少具有一个邻域的欧氏距离。 如果选择了“面邻接”或者“通过文件获取空间权重”空间概念化,则此参数不会产生任何影响。 | Double |
Weights_Matrix_File (可选) |
指向包含空间权重(其定义要素间的空间关系)的文件的路径。 | File |
代码示例
以下 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")
以下独立 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()