增量空间自相关 (空间统计)

摘要

测量一系列距离的空间自相关,并选择性创建这些距离及其相应 z 得分的折线图。 z 得分反映空间聚类的程度,具有统计显著性的峰值 z 得分表示促进空间过程聚类最明显的距离。 这些峰值距离值通常适用于具有距离范围或距离半径参数的工具。

插图

“增量空间自相关”工具图示
Z 得分峰值反映促进空间过程聚类最明显的距离。

使用情况

  • 此工具有助于为具有这些参数(如热点分析点密度)的工具选择合适的距离阈值半径

  • 增量空间自相关工具可测量一系列距离增量的空间自相关,并为每项距离增量报告相关的 Moran 指数、预期指数、方差、z 得分和 p 值。 在工具执行期间,这些值以消息形式写到地理处理窗格底部。 您可以将鼠标悬停在进度条上来访问该消息,单击弹出按钮或展开地理处理窗格中的消息部分。 您还可以通过地理处理历史访问之前运行工具的消息。 或者,此工具会创建一个 PDF 报表文件,其中包含了结果的图形汇总。 报表路径将随附在汇总工具执行参数的消息中。 单击此路径将弹开报表文件。

  • 当显示多个具有统计显著性的峰值时,聚类在这些距离处均很明显。 选择最符合您感兴趣的分析规模的峰值距离;通常这是遇到的第一个具有统计意义的峰值。

  • 输入字段应包含多种值。 此统计数学方法要求待分析的变量存在一定程度的变化;例如,如果所有输入都是 1 便无法求解。 如果要使用此工具分析事件数据的空间模式,应考虑聚合事件数据

  • 如果未投影输入要素类(即,坐标单位为度、分和秒),或者将输出坐标系设置为地理坐标系,则采用弦测量方法计算距离。 使用弦距离测量法是因为此方法不仅计算速度快,而且提供真实测地线距离的良好估测,至少对于彼此 30 度以内的点是这样。 弦距离是基于扁椭球体计算的。 给定地球表面上的任意两点,两点之间的弦距离是从三维地球穿过然后连接该两点的一条线的长度。 弦距离报表将以米为单位。

    警告:

    如果您的研究区域超过 30 度,则请确保投影数据。 弦距离无法准确估算超出 30 度的测地线距离。

  • 如果分析时使用弦距离,开始距离距离增量参数(如指定)应以米为单位。

  • 对于线和面要素,距离计算中会使用要素的质心。对于多点、折线或由多部分组成的面,将会使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。

  • 地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。

  • 对于面要素,几乎总是需要为行标准化参数选择。 如果每个要素所具有的邻域数目由聚合方案或者采样过程决定,而不是反映您所分析的变量的实际空间分布,则行标准化将减少偏移。

  • 如果未给定开始距离,则默认值为最小距离,在该距离处,数据集中的每个要素至少具有一个相邻要素。 如果您的数据集中存在位置异常值,那么此距离可能不是最合适的开始距离

  • 如果未给定增量距离,则使用平均最近邻距离或 (Td - B) / I(其中 Td 为最大阈值距离,B开始距离I距离段数量)二者当中的较小者。 该算法可确保始终根据指定的距离段数量来执行计算,确保最大距离段不会过大以致一些要素以所有其它要素或几乎所有其它要素作为其相邻要素。

  • 如果指定的开始距离和/或增量距离所生成的距离段大于最大阈值距离,增量距离将自动减小。 为避免该调整,可以减小指定的增量距离和/或距离段数量

  • 运行此工具时,可能会发生内存不足的情况。 这种情况通常发生在开始距离和/或增量距离导致要素具有很多相邻要素时。 您通常不会希望在具有上千个相邻要素的要素处创建空间关系。 增量距离使用更小的值并临时移除位置异常值,以便以更小的开始距离值启动。

  • 即使您用工具计算开始距离增量距离,大数据集的处理时间也可能比较长。 您可以通过以下方式提高性能:

    • 临时移除位置异常值
    • 可以选择研究区典型部分中的要素并只分析这些要素,而无需运行所有要素的分析。
    • 从数据集中随机选择要素的样本,只分析这些样本要素。

  • 距离通常基于输出坐标系环境设置。 输出坐标系环境的默认设置为“与输入相同”。 输入要素在分析之前投影到输出坐标系。

  • 可选输出表将包含各迭代处的距离值、Moran I 指数值、预期 Moran I 指数值、方差、z 得分和 p 值。 峰值为 z 得分值升高、然后降低处的值。 例如,如果此工具找到 50、100 和 150 米距离的 z 分数系列,即 2.95、3.68、3.12,则峰值将为 100 米。

  • 输出报表文件可选择以 PDF 格式创建,并可通过地理处理窗格底部的消息进行访问。

  • 在配置了阿拉伯语或其他从右向左书写语言的 ArcGIS 语言包的计算机上,您可能会发现 PDF 输出报表文件中存在丢失文本或格式化问题。这篇文章会解决这些问题。

  • 当未识别出峰值 z 分数时,第一个峰值 z 分数和最大峰值 z 分数派生的输出参数均返回空白。

  • 在 Python 脚本中使用此工具时,从工具执行返回的结果对象具有以下输出:

    位置描述数据类型

    0

    第一个峰值

    双精度

    1

    最大峰值

    双精度

参数

标注说明数据类型
输入要素

将在一系列距离上测量其空间自相关的要素类。

Feature Layer
输入字段

用于评估空间自相关的数值字段。

Field
距离段数量

针对空间自相关而递增邻域大小和分析数据集的次数。 分别在开始距离距离增量参数中指定的增量的起点和大小。

Long
开始距离
(可选)

开始空间自相关分析的距离和开始增量的距离。 为此参数输入的值应使用输出坐标系环境设置的单位。

Double
距离增量
(可选)

每次迭代后要增加的距离。 分析中使用的距离于开始距离处开始,以距离增量中指定的数量增加。 为此参数输入的值应使用输出坐标系环境设置的单位。

Double
距离法
(可选)

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

  • 欧氏两点间的直线距离
  • 曼哈顿沿垂直轴度量的两点间的距离(城市街区),计算方法是对两点的 x 和 y 坐标的差值(绝对值)求和。
String
行标准化
(可选)

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

  • 选中 - 将对空间权重执行标准化;每项权重将除以其所在行的和(所有相邻要素的权重和)。
  • 取消选中 - 不对空间权重执行标准化。
Boolean
输出表
(可选)

要使用每个距离范围和关联的 z 分数结果创建的表。

Table
输出报表文件
(可选)

要创建的 PDF 文件,其中包含汇总结果的折线图。

File

派生输出

标注说明数据类型
第一个峰值

第一个峰值 z 得分。

Double
最大峰值

最大峰值 z 得分。

Double

arcpy.stats.IncrementalSpatialAutocorrelation(Input_Features, Input_Field, Number_of_Distance_Bands, {Beginning_Distance}, {Distance_Increment}, {Distance_Method}, {Row_Standardization}, {Output_Table}, {Output_Report_File})
名称说明数据类型
Input_Features

将在一系列距离上测量其空间自相关的要素类。

Feature Layer
Input_Field

用于评估空间自相关的数值字段。

Field
Number_of_Distance_Bands

针对空间自相关而递增邻域大小和分析数据集的次数。 分别在 Beginning_DistanceDistance_Increment 参数中指定的增量的起点和大小。

Long
Beginning_Distance
(可选)

开始空间自相关分析的距离和开始增量的距离。 为此参数输入的值应使用输出坐标系环境设置的单位。

Double
Distance_Increment
(可选)

每次迭代后要增加的距离。 分析中使用的距离于 Beginning_Distance 处开始,以 Distance_Increment 中指定的数量增加。 为此参数输入的值应使用输出坐标系环境设置的单位。

Double
Distance_Method
(可选)

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

  • EUCLIDEAN两点间的直线距离
  • MANHATTAN沿垂直轴度量的两点间的距离(城市街区),计算方法是对两点的 x 和 y 坐标的差值(绝对值)求和。
String
Row_Standardization
(可选)

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

  • ROW_STANDARDIZATION按行对空间权重执行标准化。 每个权重都除以它的行总和。
  • NO_STANDARDIZATION将不会对空间权重执行标准化。
Boolean
Output_Table
(可选)

要使用每个距离范围和关联的 z 分数结果创建的表。

Table
Output_Report_File
(可选)

要创建的 PDF 文件,其中包含汇总结果的折线图。

File

派生输出

名称说明数据类型
First_Peak

第一个峰值 z 得分。

Double
Max_Peak

最大峰值 z 得分。

Double

代码示例

IncrementalSpatialAutocorrelation 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用 IncrementalSpatialAutocorrelation 函数。

import arcpy
arcpy.env.workspace = r"C:\ISA"
arcpy.stats.IncrementalSpatialAutocorrelation("911CallsCount.shp", "ICOUNT", 
                                              "20", "", "", "EUCLIDEAN",
                                              "ROW_STANDARDIZATION", 
                                              "outTable.dbf", "outReport.pdf")
IncrementalSpatialAutocorrelation 示例 2(独立脚本)

以下独立 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

# Set property to overwrite existing output, by default
arcpy.env.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.management.CopyFeatures("911Calls.shp", "911Copied.shp")
    integrate = arcpy.management.Integrate("911Copied.shp #", "30 Feet")

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

    # Use Incremental Spatial Autocorrelation to get the peak distance
    # Process: Incremental Spatial Autocorrelation
    isa = arcpy.stats.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 = arcpy.stats.HotSpots(ce, "ICOUNT", "911HotSpots.shp", "Fixed Distance Band",
                     "Euclidean Distance", "None",  distance, "", "")

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

环境

特殊情况

输出坐标系

在进行分析之前将要素几何投影到输出坐标系。 所有数学计算都基于输出坐标系空间参考。 输出坐标系基于度、分、秒时,测地线距离使用弦距离估测。