比较邻域概念化 (空间统计)

摘要

用于从一组候选空间权重矩阵 (SWM) 中选择最能代表一个或多个数值字段的空间模式(如趋势或聚类)的 SWM。

然后,可以在允许 .swm 文件用于其邻域类型空间关系概念化参数值的工具中使用输出空间权重矩阵文件,例如双变量空间关联 (Lee's L)热点分析 (Getis-Ord Gi*) 以及聚类和异常值分析 (Anselin Local Moran's I) 工具。

该工具通过根据每个候选 SWM 创建空间分量(称为 Moran 特征向量)并测试这些分量如何有效地表示输入字段的空间模式来选择 SWM。

了解有关 Moran 特征向量的详细信息

插图

“比较邻域概念化”工具图示

使用情况

  • 此工具的目的是通过测试哪些空间权重将产生相应空间分量,这些空间分量最精确地预测输入字段值,从而建议最能表示输入字段空间模式的邻域类型和权重方案(有时称为空间关系的概念化)。 原因在于每个空间分量都有一个空间模式,而能够最精确地预测输入字段的分量即与输入字段具有最相似模式的分量。 然而,这种建议的 SWM 并非旨在取代个人或专家对数据及其过程的了解。 选择 SWM 进行分析时需要考虑很多因素,并且此工具仅使用空间分量预测输入字段的功能来确定建议的 SWM。 在某些情况下,例如使用热点分析 (Getis-Ord Gi*) 工具时,存在用于选择 SWM 的其他方法,例如使用最大化数据空间自相关的距离范围(即优化的热点分析工具确定其邻域和权重的方式)。 建议您尝试邻域和空间权重的替代方法,并使用最符合分析目标的方法。

  • 将所有字段提供给输入字段参数,您将在后续使用输出 .swm 文件的分析中使用这些字段。 例如,热点分析 (Getis-Ord Gi*) 工具仅需要一个字段,但双变量空间关联 (Lee's L) 工具需要两个字段。 在为后续分析工具的邻域类型空间关系概念化参数指定从文件获取空间权重选项后,可以在权重矩阵文件参数中提供输出 .swm 文件。

  • 地理处理消息包含邻域搜索历史记录表,其中显示了每个测试的 SWM 的详细信息(例如相邻要素的数量和加权方案)以及用于预测输入字段的 SWM 的校正 R 方值。 工具推荐的 SWM 将具有最大的校正 R 平方值,并在表中以粗体文本加星号 (*) 标识。

  • 为了选择 SWM,工具会生成候选 SWM 列表,并测试哪个 SWM 创建的空间分量最能代表输入字段的空间模式。 如果在输入空间权重矩阵文件参数中未提供任何 SWM,则将创建 28 个 SWM 并将其包含在候选列表中(有关每个 SWM 的描述,请参见理解 Moran 特征向量)。 如果提供了任何输入 SWM,您可以使用仅比较输入空间权重矩阵参数来指定候选列表是否仅包含提供的 SWM,或者包含提供的 SWM 以及工具创建的 28 个 SWM。 例如,要使用单个指定的 SWM,请在输入空间权重矩阵文件参数中提供 SWM,并保持选中仅比较输入空间权重矩阵参数。

  • 该工具将使用以下程序来确定建议的 SWM:

    1. 对于每个 SWM,都会生成具有最大特征值(自相关性最强)的 Moran 特征向量。 特征向量的数量等于要素数量的 25%,最多为 100 个。
    2. 将过滤出任何具有负 Moran's I 值(即其为负自相关)的特征向量。
    3. 在普通最小二乘法回归模型中,将使用特征向量作为解释变量来单独预测每个输入字段。
    4. 将所有字段的总平方和与残差平方和相加,并计算组合的校正 R 方值。
    5. 将返回具有最高校正 R 方值的 SWM。

    以下参考文献中详细描述了该程序:

    • Bauman, David, Thomas Drouet, Marie-Josée Fortin, and Stéphane Dray. 2018. "Optimizing the choice of a spatial weighting matrix in eigenvector-based methods." Ecology 99, no. 10: 2159-2166. https://doi.org/10.1002/ecy.2469.

参数

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

输入要素,包含用于选择 SWM 的字段。

Feature Layer
输入字段

输入字段,包含用于选择 SWM 的字段。

Field
输出空间权重矩阵

工具选择的相邻要素和权重的输出 .swm 文件。

File
唯一 ID 字段

输出 .swm 文件的唯一 ID 字段。 该字段必须是整数,并且每个输入要素必须具有唯一的值。

Field
输入空间权重矩阵文件
(可选)

将作为候选 SWM 的输入 .swm 文件列表,工具将使用这些 SWM 来最好地表示一个或多个数值字段的空间模式(如趋势或聚类)。 如果未提供任何文件,该工具将测试 28 个不同的邻域。

File
仅比较输入空间权重矩阵
(可选)

指定是仅测试输入空间权重矩阵文件参数中提供的 .swm 文件,还是同时测试另外 28 个邻域。 工具将使用创建的空间分量能够最好地表示一个或多个数值字段的空间模式(如趋势或聚类)的 SWM。 此参数仅在提供了至少一个输入 .swm 文件时适用。

  • 选中 - 将仅测试输入空间权重矩阵文件参数中提供的输入 .swm 文件。 这是默认设置。
  • 未选中 - 将测试输入空间权重矩阵文件参数中提供的输入 .swm 文件以及另外 28 个邻域。
Boolean

arcpy.stats.CompareNeighborhoodConceptualizations(in_features, input_fields, out_swm, id_field, {in_swm}, {compare_only_inputs})
名称说明数据类型
in_features

输入要素,包含用于选择 SWM 的字段。

Feature Layer
input_fields
[input_fields,...]

输入字段,包含用于选择 SWM 的字段。

Field
out_swm

工具选择的相邻要素和权重的输出 .swm 文件。

File
id_field

输出 .swm 文件的唯一 ID 字段。 该字段必须是整数,并且每个输入要素必须具有唯一的值。

Field
in_swm
[in_swm,...]
(可选)

将作为候选 SWM 的输入 .swm 文件列表,工具将使用这些 SWM 来最好地表示一个或多个数值字段的空间模式(如趋势或聚类)。 如果未提供任何文件,该工具将测试 28 个不同的邻域。

File
compare_only_inputs
(可选)

指定是仅测试 in_swm 参数中提供的 .swm 文件,还是同时测试另外 28 个邻域。 工具将使用创建的空间分量能够最好地表示一个或多个数值字段的空间模式(如趋势或聚类)的 SWM。 此参数仅在提供了至少一个输入 .swm 文件时适用。

  • COMPARE_INPUTS将仅测试 in_swm 参数中提供的输入 .swm 文件。 这是默认设置。
  • COMPARE_ALL将测试 in_swm 参数中提供的输入 .swm 文件以及另外 28 个邻域。
Boolean

代码示例

CompareNeighborhoodConceptualizations 示例 1(Python 窗口)

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

# Select the spatial weights matrix (SWM) that best describes the 
# spatial patterns of POP_SQMI.

arcpy.env.workspace = r"c:\data\project_data.gdb"

arcpy.stats.CompareNeighborhoodConceptualizations(
    in_features="states",
    input_fields="POP_SQMI",
    out_swm=r"c:\data\states.swm",
    id_field="unique_id_field"
)
CompareNeighborhoodConceptualizations 示例 2(独立脚本)

以下独立脚本演示了如何使用 CompareNeighborhoodConceptualizations 函数:

# Select the spatial weights matrix (SWM) that best describes 
# the spatial patterns of two analysis field. 

import arcpy

# Set the current workspace.
arcpy.env.workspace = r"c:\data\project_data.gdb"

# Run the tool.
arcpy.stats.CompareNeighborhoodConceptualizations(
    in_features="myFeatureClass",
    input_fields="myAnalysisField1;myAnalysis Field2",
    out_swm=r"myOutputSWM.swm",
    id_field="myUniqueIDField"
)

# Print the tool messages.
print(arcpy.GetMessages())

环境

此工具不使用任何地理处理环境。

相关主题