平均最近邻 (Spatial Statistics)
摘要
根据每个要素与其最近邻要素之间的平均距离计算其最近邻指数。
可从结果 窗口获取此工具的结果(包括可选报表文件)。如果禁用了后台处理,结果也将被写入进度 对话框。
插图
用法
-
“平均最近邻”工具将返回五个值:平均观测距离、预期平均距离、最近邻指数、z 得分和 p 值。您可通过结果窗口访问这些值,也可以将这些值作为派生输出值进行传递,以满足模型或脚本中的潜在使用需要。或者,此工具会创建一个 HTML 文件,其中包含了结果的图形汇总。双击结果 窗口中的 HTML 条目时,将在默认的 Internet 浏览器中打开该 HTML 文件。右键单击结果 窗口中的消息条目并选择查看后,将在消息对话框中显示结果。
注:- 当此工具是自定义模型工具的一部分时,如果在运行工具之前将 HTML 链接设置为模型参数,则 HTML 链接将仅在结果 窗口中显示。
- 为了获得 HTML 图形的最佳显示效果,请确保已将监视器设置为 96 DPI。
-
z 得分和 p 值结果是统计显著性的量度,用来判断是否拒绝零假设。但是应注意,此方法的统计意义受研究区域大小的强烈影响(请参阅下文)。对于“平均最近邻”统计,零假设表明要素是随机分布的。
-
“最近邻指数”的表示方式是“平均观测距离”与“预期平均距离”的比率。预期平均距离是假设随机分布中的邻域间的平均距离。如果指数小于 1,所表现的模式为聚类;如果指数大于 1,则所表现的模式趋向于离散或竞争。
-
平均最近邻方法对“面积”值非常敏感(面积参数值的细微变化都能导致结果产生巨大变化)。因此,平均最近邻工具最适用于对固定研究区域中不同的要素进行比较。下图是关于相同要素分布如何根据指定的研究区域进行分散或聚类的一个典型示例。
-
如果没有指定面积参数值,则使用输入要素周围最小外接矩形的面积。与范围不同,最小外接矩形不一定必须与 x 轴和 y 轴对齐。
如果未投影输入要素类(即,坐标单位为度、分和秒),或者将输出坐标系设置为地理坐标系,则采用弦测量方法计算距离。使用弦距离测量法是因为此方法不仅计算速度快,而且提供真实测地线距离的良好估测,至少对于彼此 30 度以内的点是这样。弦距离以球体为基础,而不是以地球实际的扁椭圆体为基础。给定地球表面上的任意两点,两点之间的弦距离是从三维地球穿过然后连接该两点的一条线的长度。弦距离以米为单位报告。
警告:如果您的研究区延伸超过 30 度,则需确保投影数据。测地线距离超过 30 度时,弦距离不是理想的估测方法。
分析时若使用弦距离,面积参数(如指定)应以米为单位。
在 ArcGIS 10.2.1 之前的版本中,如果所选的参数和环境设置要求通过地理坐标(度、分、秒)计算结果,则会显示一条警告消息。该警告消息建议您投影数据到投影坐标系中,以使距离计算结果更为准确。但自 10.2.1 起,每当需要使用地理坐标系进行计算时,该工具都将计算弦距离。
警告:由于该变化,如果您通过 ArcGIS 10.2.1 之前版本创建模型,且模型包含硬编码的地理坐标系参数值,则可能需要修改包含该工具的模型。例如,如果将距离参数设置为 0.0025 度,则需要将固定值的单位从度转化为米,然后重新保存模型。
-
在一些特殊情况下,输入要素可能会造成无效(面积为零)的最小外接矩形。在这种情况下,将使用基于输入要素的 XY 容差得到的一个较小值来创建最小外接矩形。例如,如果所有的要素都重合(也就是说,所有要素拥有完全相同的 X 和 Y 坐标),则在计算中将使用单一位置周围的一个非常小的方形面的面积。另一个例子是,所有要素完全对齐(例如,一条直线上的 3 个点);在这种情况下,将在计算中使用要素周围一个宽度很小的矩形面的面积。使用平均最近邻工具时,最好提供一个面积值。
-
尽管此工具将用于处理面或线数据,但它最适用于事件、事件点或其他定点要素数据。对于线要素和面要素,会在计算中使用每个要素真正的几何质心。对于多点、折线 (polyline) 或由多部分组成的面,使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
此工具将选择性地创建 HTML 文件汇总结果。HTML 文件不会自动显示在目录 窗口中。如果要在“目录”中显示 HTML 文件,可打开 ArcCatalog 应用程序,选择自定义菜单选项,单击 ArcCatalog 选项,然后选择文件类型选项卡。单击新建类型按钮,并指定 HTML 作为文件扩展名。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
在 ArcGIS 10 中,将不再自动显示可选的图形输出。而是将创建 HTML 文件汇总结果。要查看结果,请在结果窗口中双击 HTML 文件。在 ArcGIS 10 之前创建的使用此工具的自定义脚本或模型工具可能需要重新构建。要重新构建这些自定义工具,请打开这些工具,移除以图形方式显示结果参数,然后重新保存。
在使用 shapefile 时,请注意 shapefile 无法存储空值。根据非 shapefile 输入创建 shapefile 的工具或其他过程可能会将空值存储(或解释)为零。某些情况下,空值则以极大的负值储存于 shapefile 中。这会产生意外的结果。有关详细信息,请参阅 shapefile 输出的地理处理注意事项。
语法
参数 | 说明 | 数据类型 |
Input_Feature_Class |
要对平均最近邻距离进行计算的要素类(通常是点要素类)。 | Feature Layer |
Distance_Method |
指定计算每个要素与邻近要素之间的距离的方式。
| String |
Generate_Report (可选) |
| Boolean |
Area (可选) |
表示研究区域大小的数值。默认值是包含所有要素(或所有选定要素)的最小外接矩形的面积。单位应与“输出坐标系”的单位一致。 | Double |
代码实例
下面的 Python 窗口脚本演示了如何使用平均最近邻 (AverageNearestNeighbor) 工具。
import arcpy
arcpy.env.workspace = r"C:\data"
arcpy.AverageNearestNeighbor_stats("burglaries.shp", "EUCLIDEAN_DISTANCE", "NO_REPORT", "#")
下面的独立 Python 脚本演示了如何使用平均最近邻 (AverageNearestNeighbor) 工具。
# Analyze crime data to determine if spatial patterns are statistically significant
# Import system modules
import arcpy
# Local variables...
workspace = "C:/data"
crime_data = "burglaries.shp"
try:
# Set the current workspace (to avoid having to specify the full path to the feature classes each time)
arcpy.env.workspace = workspace
# Obtain Nearest Neighbor Ratio and z-score
# Process: Average Nearest Neighbor...
nn_output = arcpy.AverageNearestNeighbor_stats(crime_data, "EUCLIDEAN_DISTANCE", "NO_REPORT", "#")
# Create list of Average Nearest Neighbor output values by splitting the result object
print "The nearest neighbor index is: " + nn_output[0]
print "The z-score of the nearest neighbor index is: " + nn_output[1]
print "The p-value of the nearest neighbor index is: " + nn_output[2]
print "The expected mean distance is: " + nn_output[3]
print "The observed mean distance is: " + nn_output[4]
print "The path of the HTML report: " + nn_output[5]
except:
# If an error occurred when running the tool, print out the error message.
print arcpy.GetMessages()