空间自相关 (Global Moran's I) (Spatial Statistics)
摘要
根据要素位置和属性值使用 Global Moran's I 统计量测量空间自相关性。
可从结果 窗口获取此工具的结果(包括可选报表文件)。如果禁用了后台处理,结果也将被写入进度 对话框。
插图
用法
-
“空间自相关”工具将返回五个值:Moran's I 指数、预期指数、方差、z 得分及 p 值。通过结果窗口可访问这些值,也可以将这些值作为派生输出值传递,以满足模型或脚本中的潜在使用需要。或者,此工具会创建一个 HTML 文件,其中包含结果的图形汇总。双击结果 窗口中的 HTML 文件,将在默认的 Internet 浏览器中打开该 HTML 文件。右键单击结果 窗口中的消息条目并选择查看后,将在消息对话框中显示结果。如果在前景中执行此工具,还将在进度对话框中显示输出值。
注:- 当此工具是自定义模型工具的一部分时,如果在运行工具之前将 HTML 链接设置为模型参数,则 HTML 链接将仅在结果 窗口中显示。
- 为了获得 HTML 图形的最佳显示效果,请确保已将监视器设置为 96 DPI。
-
在给定一组要素及相关属性的情况下,“空间自相关”工具将评估所表达的模式是聚类模式、离散模式还是随机模式。使用 z 得分或 p 值指示统计显著性时,如果 Moran's I 指数值为正则指示聚类趋势,如果 Moran's I 指数值为负则指示离散趋势。
-
Global Moran's I 工具通过计算 z 得分和 p 值来指示您是否可以拒绝零假设。此种情况下,零假设表示要素值随机分布于研究区域中。
-
z 得分基于随机化零假设进行计算。有关 z 得分的详细信息,请参阅什么是 z 得分?什么是 p 值?
-
输入字段应包含多种值。此统计数学方法要求待分析的变量存在一定程度的变化;例如,如果所有输入都是 1 便无法求解。如果要使用此工具分析事件数据的空间模式,应考虑聚合事件数据。
-
基于欧氏距离或者曼哈顿距离的计算需要对数据进行投影以准确测量距离。
此工具将选择性地创建 HTML 文件汇总结果。HTML 文件不会自动显示在目录 窗口中。如果要在目录 窗口中显示 HTML 文件,可打开 ArcCatalog 应用程序,选择自定义菜单选项,单击 ArcCatalog 选项,然后选择文件类型选项卡。单击新建类型按钮,并指定 HTML 作为文件扩展名。
-
对于线和面要素,距离计算中会使用要素的质心。对于多点、折线或由多部件组成的面,将会使用所有要素部件的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
-
空间关系的概念化参数的选择应反映要分析的要素之间的固有关系。对要素在空间中彼此交互方式构建的模型越逼真,结果就越准确。这些建议在选择空间关系的概念化:最佳做法中进行了概述。以下是一些额外提示:
- FIXED_DISTANCE_BAND
默认的距离范围或距离阈值将确保每个要素至少拥有一个相邻要素,这一点十分重要。但通常,此默认值并不是适用于分析的最合适的距离。为分析选择适合的比例(距离范围)的其他策略在选择固定距离范围值中进行了概括介绍。
- INVERSE_DISTANCE 或者 INVERSE_DISTANCE_SQUARED
如果为距离范围或阈值距离参数输入 0,则所有要素均被视为所有其他要素的相邻要素;如果将此参数留空,则将采用默认距离。
如果距离权重小于 1,则对其取倒数时将变得不稳定。因此,对于分隔距离小于 1 单位的要素权重(常见于地理坐标系投影),权重值将指定为 1。
警告:如果选择使用任何基于反距离的空间概念化方法(INVERSE_DISTANCE、INVERSE_DISTANCE_SQUARED 或者 ZONE_OF_INDIFFERENCE),则不建议对具有地理坐标系投影的要素进行分析。
对于“反距离”选项(INVERSE_DISTANCE、INVERSE_DISTANCE_SQUARED 或 ZONE_OF_INDIFFERENCE),为避免产生除数为零的情况,任何重合两点的权重值均将指定为 1。这样便可确保将要素包含在分析之内。
- FIXED_DISTANCE_BAND
-
空间关系的概念化参数的附加选项(包括空间-时间关系)在使用生成空间权重矩阵或者生成网络空间权重工具时可用。要利用这些附加选项,请使用上述任一工具构造空间权重矩阵文件,然后进行分析;为空间关系的概念化参数选择 GET_SPATIAL_WEIGHTS_FROM_FILE;为权重矩阵文件参数指定您所创建的空间权重文件的路径。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
- 注:
- 当此工具是自定义模型工具的一部分时,如果在运行工具之前将 HTML 链接设置为模型参数,则 HTML 链接将仅在结果 窗口中显示。
- 为了获得 HTML 图形的最佳显示效果,请确保已将监视器设置为 96 DPI。
如果提供的是一个带 SWM 扩展名的权重矩阵文件,则此工具需要输入的是一个由生成空间权重矩阵或生成网络空间权重工具所创建的空间权重矩阵文件;否则,此工具需要输入一个 ASCII 格式的空间权重矩阵文件。在某些情况下,工具行为将根据所使用的空间矩阵文件类型的不同而有所区别:
- ASCII 格式的空间权重矩阵文件:
- 权重“按原样”使用。所缺失的要素与要素之间的关系被视为零。
- 如果对权重进行了行标准化,则选择集的分析结果很有可能不正确。如果需要对选择集运行分析,则通过以下方法将 ASCII 空间权重文件转换为 SWM 文件:将 ASCII 数据读入表,然后将 CONVERT_TABLE 选项与生成空间权重矩阵工具结合使用。
- SWM 格式的空间权重矩阵文件:
- 如果对权重进行了行标准化,则会将其选择集重新标准化。否者,权重“按原样”使用。
使用 ASCII 格式的空间权重矩阵文件运行您的分析会占用大量内存。如果要分析的要素超过 5,000 个,则考虑将 ASCII 格式的空间权重矩阵文件转换为 SWM 格式的文件。首先,将 ASCII 权重置入一个带格式的表中(例如,使用 Excel)。接下来运行生成空间权重矩阵工具,并使用空间关系的概念化参数的 CONVERT_TABLE。输出将是 SWM 格式的空间权重矩阵文件。
对于面要素,几乎总是需要为行标准化参数选择行。如果每个要素所具有的邻域数目由聚合方案或者采样过程决定,而不是反映您所分析的变量的实际空间分布,则行标准化将减少偏移。
-
空间关系建模帮助主题提供了有关此工具的参数的附加信息。
在 ArcGIS 10 中,将不再自动显示可选的图形输出。而是将创建 HTML 文件汇总结果。要查看结果,请在结果窗口中双击 HTML 文件。在 ArcGIS 10 之前创建的使用此工具的自定义脚本或模型工具可能需要重新构建。要重新构建这些自定义工具,请打开这些工具,移除以图形方式显示结果参数,然后重新保存。
运行此工具时,可能会发生内存不足的情况。当您选择会导致要素具有很多相邻要素的空间关系的概念化和/或距离范围或阈值距离时,通常会发生这种情况。您通常不会希望定义会使要素具有上千个相邻要素的空间关系。您希望所有要素至少具有一个相邻点,几乎所有要素至少具有八个相邻点。
在使用 shapefile 时,请注意 shapefile 无法存储空值。根据非 shapefile 输入创建 shapefile 的工具或其他过程可能会将空值存储(或解释)为零。某些情况下,空值则以极大的负值储存于 shapefile 中。这会产生意外的结果。有关详细信息,请参阅 shapefile 输出的地理处理注意事项。
在 ArcGIS 9.2 版本中,“全局”标准化选项已被移除。全局标准化返回的结果与不执行标准化相同。通过 ArcGIS 较早版本构建的使用全局标准化选项的模型可能需要重新进行构建。
语法
参数 | 说明 | 数据类型 |
Input_Feature_Class |
要计算空间自相关的要素类。 | 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 窗口脚本演示了如何使用空间自相关 (SpatialAutocorrelation) 工具。
import arcpy
arcpy.env.workspace = r"c:\data"
arcpy.SpatialAutocorrelation_stats("olsResults.shp", "Residual","NO_REPORT", "GET_SPATIAL_WEIGHTS_FROM_FILE","EUCLIDEAN DISTANCE", "NONE", "#","euclidean6Neighs.swm")
以下独立 Python 脚本演示了如何使用 SpatialAutocorrelation 工具。
# Analyze the growth of regional per capita incomes in US
# Counties from 1969 -- 2002 using Ordinary Least Squares Regression
# 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.workspace = workspace
# Growth as a function of {log of starting income, dummy for South
# counties, interaction term for South counties, population density}
# Process: Ordinary Least Squares...
ols = arcpy.OrdinaryLeastSquares_stats("USCounties.shp", "MYID",
"olsResults.shp", "GROWTH",
"LOGPCR69;SOUTH;LPCR_SOUTH;PopDen69",
"olsCoefTab.dbf",
"olsDiagTab.dbf")
# Create Spatial Weights Matrix (Can be based off input or output FC)
# Process: Generate Spatial Weights Matrix...
swm = arcpy.GenerateSpatialWeightsMatrix_stats("USCounties.shp", "MYID",
"euclidean6Neighs.swm",
"K_NEAREST_NEIGHBORS",
"#", "#", "#", 6)
# Calculate Moran's I Index of Spatial Autocorrelation for
# OLS Residuals using a SWM File.
# Process: Spatial Autocorrelation (Morans I)...
moransI = arcpy.SpatialAutocorrelation_stats("olsResults.shp", "Residual",
"NO_REPORT", "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()