增量空间自相关 (Spatial Statistics)
摘要
测量一系列距离的空间自相关,并选择性创建这些距离及其相应 z 得分的折线图。z 得分反映空间聚类的程度,具有统计显著性的峰值 z 得分表示促进空间过程聚类最明显的距离。这些峰值距离通常为具有“距离范围”或“距离半径”参数的工具所使用的合适值。
插图
用法
此增量空间自相关工具可测量一系列距离增量的空间自相关,并为每项距离增量报告相关的 Moran 指数、预期指数、方差、z 得分和 p 值。右键单击消息条目并选择视图,在结果 窗口中访问这些值。作为派生输出值,此工具也可传递可能会在模型或脚本中使用的第一个峰值 z 得分和最大峰值 z 得分(样本脚本请参见以下示例)。
-
当显示多个具有统计显著性的峰值时,聚类在这些距离处均很明显。选择与您感兴趣的分析比例对应的峰值距离;通常为遇到的第一个具有统计显著性的峰值。
输入字段应包含多种值。此统计数学方法要求待分析的变量存在一定程度的变化;例如,如果所有输入都是 1 便无法求解。如果要使用此工具分析事件数据的空间模式,应考虑聚合事件数据。
-
基于欧氏距离或者曼哈顿距离的计算需要对数据进行投影以准确测量距离。
-
对于线和面要素,距离计算中会使用要素的质心。对于多点、折线或由多部件组成的面,将会使用所有要素部件的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
对于面要素,几乎总是需要为行标准化参数选择行。如果每个要素所具有的邻域数目由聚合方案或者采样过程决定,而不是反映您所分析的变量的实际空间分布,则行标准化将减少偏移。
如果未给定开始距离,则默认距离为开始距离,在该距离处,数据集中的每个要素至少具有一个相邻要素。如果您的数据集中存在空间异常值,此距离可能不是最合适的开始距离。
如果未给定增量距离,则使用平均最近邻距离。
运行此工具时,可能会发生内存不足的情况。这种情况通常发生在开始距离和/或增量距离导致要素具有很多相邻点时。您通常不会希望在具有上千个相邻要素的要素处创建空间关系。增量距离使用更小的值并临时移除空间异常值,以便以更小的开始距离值启动。
距离通常基于输出坐标系环境设置。输出坐标系环境的默认设置为与输入相同。进行分析之前将输入要素投影到输出坐标系。
可选输出表将包含各迭代处的距离值、Moran I 指数值、预期 Moran I 指数值、方差、z 得分和 p 值。峰值为 z 得分值升高、然后降低处的值。例如,如果此工具查找到 50、100 和 150 米距离的 z 得分分别为:2.95、3.68 和 3.12,则峰值应为 100 米。
可选输出报告文件以 PDF 文件格式创建,通过双击文件名可从结果 窗口访问此文件。
此工具将选择性地创建汇总结果的 PDF 报表。PDF 文件不会自动显示在目录 窗口中。如果要在目录 窗口中显示 PDF 文件,可打开 ArcCatalog 应用程序,选择自定义菜单选项,单击 ArcCatalog 选项,然后选择文件类型选项卡。单击新建类型按钮,并指定 PDF 作为文件扩展名,如下图所示。
在配置了中文或日语的 ArcGIS 语言包的计算机上,您可能会发现 PDF 输出报表文件中存在丢失文本和/或格式化问题。这些问题可通过更改字体设置进行更正。
当峰值 z 得分未确定时,第一个峰值 z 得分和最大峰值 z 得分派生的输出参数将返回空值。
语法
参数 | 说明 | 数据类型 |
Input_Features |
要对一系列距离进行测量的空间自相关的要素类。 | Feature Layer |
Input_Field |
用于评估空间自相关的数值字段。 | Field |
Number_of_Distance_Bands |
针对空间自相关而递增邻域大小和分析数据集的次数。分别在开始距离和距离增量参数中指定的增量的起点和大小。 | Long |
Beginning_Distance (可选) |
开始空间自相关分析的距离和开始增量的距离。为此参数输入的值应使用“输出坐标系”环境设置的单位。 | Double |
Distance_Increment (可选) |
每次迭代后要增加的距离。分析中使用的距离于开始距离处开始,以距离增量中指定的数量增加。为此参数输入的值应使用“输出坐标系”环境设置的单位。 | Double |
Distance_Method (可选) |
指定计算每个要素与邻近要素之间的距离的方式。
| String |
Row_Standardization (可选) |
| Boolean |
Output_Table (可选) |
要创建的表格包含各距离范围和相关 z 得分结果。 | Table |
Output_Report_File (可选) |
要创建的 PDF 文件包含汇总结果的折线图。 | File |
代码实例
以下 Python 窗口脚本演示了如何使用增量空间自相关 (IncrementalSpatialAutocorrelation) 工具。
import arcpy, os
import arcpy.stats as SS
arcpy.env.workspace = r"C:\ISA"
SS.IncrementalSpatialAutocorrelation("911CallsCount.shp", "ICOUNT", "20", "", "", "EUCLIDEAN",
"ROW_STANDARDIZATION", "outTable.dbf", "outReport.pdf")
下面的独立 Python 脚本演示了如何使用增量空间自相关 (IncrementalSpatialAutocorrelation) 工具。
# Hot Spot Analysis of 911 calls in a metropolitan area
# using the Incremental Spatial Autocorrelation and Hot Spot Analysis Tool
# Import system modules
import arcpy, os
import arcpy.stats as SS
# Set geoprocessor object property to overwrite existing output, by default
arcpy.gp.overwriteOutput = True
# Local variables
workspace = r"C:\ISA"
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 30 feet
# Process: Copy Features and Integrate
cf = arcpy.CopyFeatures_management("911Calls.shp", "911Copied.shp","#", 0, 0, 0)
integrate = arcpy.Integrate_management("911Copied.shp #", "30 Feet")
# Use Collect Events to count the number of calls at each location
# Process: Collect Events
ce = SS.CollectEvents("911Copied.shp", "911Count.shp")
# Use Incremental Spatial Autocorrelation to get the peak distance
# Process: Incremental Spatial Autocorrelation
isa = SS.IncrementalSpatialAutocorrelation(ce, "ICOUNT", "20", "", "", "EUCLIDEAN",
"ROW_STANDARDIZATION", "outTable.dbf", "outReport.pdf")
# Hot Spot Analysis of 911 Calls
# Process: Hot Spot Analysis (Getis-Ord Gi*)
distance = isa.getOutput(2)
hs = SS.HotSpots(ce, "ICOUNT", "911HotSpots.shp", "Fixed Distance Band",
"Euclidean Distance", "None", distance, "", "")
except:
# If an error occurred when running the tool, print out the error message.
print arcpy.GetMessages()