GIS在空间统计学中的应用:聚类与异常值分析(Anselin Local Moran’s I)

GIS基础理论
Dr.GIS
wowwwai GIS研习社 · 工具流程与项目排障

《GIS在空间统计学中的应用:聚类与异常值分析(Anselin Local Moran’s I)》要解决的是一个很常见的问题:地图上看起来“高值集中”或“低值突兀”的地方,究竟是真正的空间聚类,还是只是视觉错觉。本文以 GIS 实务流程为主,说明如何用 Anselin Local Moran’s I 识别高值聚类、低值聚类和空间异常值,并给出在 ArcGIS Pro、GeoDa、PySAL 等工具中的操作要点。

Anselin Local Moran’s I 空间聚类与异常值分析 GIS应用流程
Anselin Local Moran’s I 的典型 GIS 分析流程:从指标数据、空间邻接关系到聚类与异常值结果图。

引言:为什么需要用 Anselin Local Moran’s I 做局部空间统计

在 GIS 项目中,我们经常会看到某些区域的房价、病例数、污染浓度、人口密度或经济指标明显偏高。仅凭专题图判断“这里是热点”并不可靠,因为颜色分级、行政区大小、样本数量和邻近关系都会影响视觉判断。

Anselin Local Moran’s I 是一种局部空间自相关方法,用来判断某个空间单元与其邻近单元之间是否存在显著的相似或差异关系。它不仅能识别空间聚类,还能识别空间异常值,因此非常适合用于空间统计学中的探索性空间数据分析。

在 GIS 实务中,它常用于回答以下问题:

  • 高值区域是否真的与周边高值区域形成显著聚类?
  • 低值区域是否与周边低值区域形成低值聚类?
  • 某个高值区域是否被低值区域包围,属于空间异常值?
  • 某个低值区域是否出现在高值区域中,是否需要进一步调查?

背景:聚类与异常值分析适合哪些 GIS 场景

Anselin Local Moran’s I 适用于具有空间位置和数值属性的数据。最常见的是面状行政区数据,例如街道、乡镇、区县、网格单元,也可以用于点数据聚合后的空间单元。

典型应用场景包括:

  • 公共卫生:识别疾病发病率的高值聚类和异常高发区域。
  • 城市研究:分析房价、人口密度、商业活力的局部空间集聚。
  • 环境监测:识别污染浓度高值聚类和局部异常点。
  • 区域经济:分析 GDP、人均收入、产业指标的空间分布差异。
  • 公共安全:识别案件发生率的热点聚类和异常区域。

需要注意的是,Anselin Local Moran’s I 分析的是“局部空间关系”,不是全局平均趋势。如果你只想判断整个研究区是否存在空间自相关,可以先使用 Global Moran’s I;如果你想知道具体哪些区域显著聚类或异常,再使用 Anselin Local Moran’s I。

原理:Anselin Local Moran’s I 如何识别 HH、LL、HL、LH

Anselin Local Moran’s I 的核心思想是:比较某个空间单元自身的属性值与周边空间单元属性值之间的关系。如果一个区域的值高,周边也高,它可能属于高值聚类;如果一个区域的值低,周边也低,它可能属于低值聚类;如果一个区域与周边差异很大,则可能是空间异常值。

常见结果可以理解为四类:

结果类型 含义 GIS解释 常见应用判断
HH High-High 自身高值,邻近区域也高值 高值聚类、热点候选区
LL Low-Low 自身低值,邻近区域也低值 低值聚类、冷点候选区
HL High-Low 自身高值,邻近区域低值 高值异常值,可能是局部突变区
LH Low-High 自身低值,邻近区域高值 低值异常值,可能是洼地区或数据异常

在软件结果中,通常还会出现显著性水平,例如 0.05 或 0.01。只有通过显著性检验的结果,才适合解释为空间聚类或空间异常值。未显著区域不应强行解读为“没有问题”,只能说明在当前数据、空间权重和显著性条件下没有发现明显局部空间自相关。

这里有一个关键概念:空间权重矩阵。它定义了“谁是谁的邻居”。如果邻居定义不同,Anselin Local Moran’s I 的结果也可能不同。因此,选择邻接方式或距离阈值不是机械操作,而是分析假设的一部分。

步骤:在 GIS 中完成 Anselin Local Moran’s I 分析

步骤 1:准备空间数据和分析字段

首先准备一个带有数值字段的空间图层。以区县面数据为例,字段可以是病例率、单位面积 GDP、人口密度、平均房价或污染浓度。

建议在分析前检查以下内容:

  • 图层几何是否有效,是否存在自相交、空几何或重复面。
  • 分析字段是否为数值型,而不是文本型。
  • 是否存在空值、零值或异常极端值。
  • 指标是否需要标准化,例如从“总量”转换为“率”或“密度”。
  • 空间单元大小差异是否过大,是否可能造成面积效应。

如果分析疾病数量、案件数量、企业数量等计数型数据,通常不建议直接使用原始数量。更合理的做法是转换为发病率、每万人案件数、单位面积企业密度等可比较指标。

步骤 2:选择空间权重关系

空间权重决定了每个区域的邻居范围。常见选择包括邻接关系和距离关系。

  • Queen 邻接:只要边界或顶点接触,就认为是邻居。适合行政区面数据的探索分析。
  • Rook 邻接:必须共享边界才认为是邻居,比 Queen 更严格。
  • 固定距离带:一定距离范围内的对象为邻居,适合点数据或规则网格。
  • K 近邻:每个对象固定选择最近的 K 个邻居,适合对象分布不均的数据。

在 ArcGIS Pro 中,可以在“聚类和异常值分析 Anselin Local Moran’s I”工具中设置空间关系概念。对于行政区面数据,初学者通常可以从 Contiguity Edges Corners,也就是类似 Queen 邻接的方式开始。对于点数据,则更常使用固定距离或 K 近邻。

步骤 3:运行聚类与异常值分析

在 ArcGIS Pro 中,可以按以下流程操作:

  1. 打开 Geoprocessing 面板。
  2. 搜索 Cluster and Outlier Analysis 或“聚类和异常值分析”。
  3. 输入要分析的要素图层。
  4. 选择数值分析字段。
  5. 设置输出要素类。
  6. 选择空间关系概念,例如邻接、固定距离或 K 近邻。
  7. 设置距离方法和标准化方式。
  8. 运行工具并查看输出字段。

输出结果中通常会包含 Local Moran’s I 值、Z 得分、P 值和聚类类型字段。实际解释时,不要只看颜色图,也要查看显著性字段和分类字段。

步骤 4:解释 HH、LL、HL、LH 结果

得到结果图后,可以按以下逻辑解释:

  • HH:说明该区域高值并且周边也高值,可能是稳定高值聚集区。
  • LL:说明该区域低值并且周边也低值,可能是稳定低值聚集区。
  • HL:说明该区域明显高于周边,可能是局部异常高值,需要检查原因。
  • LH:说明该区域明显低于周边,可能是局部异常低值,也可能是数据缺漏或统计口径不同。

例如,在房价分析中,HH 可能代表高价片区连续集聚;HL 可能代表某个高端楼盘或特殊功能区周边仍为低价区。在公共卫生分析中,HH 可能提示重点防控区域;HL 则可能提示某个局部异常点,需要进一步核查人口基数、报告口径或采样误差。

步骤 5:验证结果是否可信

Anselin Local Moran’s I 的结果不能只看一次运行结果。建议至少做三类验证:

  • 空间权重敏感性验证:更换邻接方式或距离阈值,看 HH、LL、HL、LH 是否稳定。
  • 指标合理性验证:确认使用的是率、密度或标准化指标,而不是不可比的总量。
  • 业务解释验证:结合道路、人口、产业、环境或政策背景判断结果是否有现实意义。

如果结果对参数非常敏感,说明该聚类或异常值结论不够稳健,应在报告中说明限制,而不是直接下结论。

常见坑:Anselin Local Moran’s I 结果容易误判的原因

把高值区域直接当作热点

高值不等于热点。Anselin Local Moran’s I 关注的是一个区域与周边区域的空间关系。一个区域本身很高,但周围不高,可能是 HL 异常值,而不是 HH 高值聚类。

使用总量字段导致人口或面积偏差

如果用病例总数、企业总数、消费总额等字段做分析,大城市或大面积区域很容易被识别为高值。更合理的是使用发病率、企业密度、人均指标或单位面积指标。

忽略空间权重矩阵的影响

不同邻居定义可能产生不同的聚类结果。尤其在研究区边缘、岛屿、飞地、狭长行政区中,空间权重设置会明显影响 Local Moran’s I 结果。

把不显著区域解释成普通区域

不显著不代表该区域没有问题,只表示在当前模型设置下未发现统计显著的局部空间自相关。它可能受样本量、邻居数量、空间尺度或指标质量影响。

忽略多重检验问题

Local Moran’s I 会对多个空间单元分别进行显著性检验。空间单元越多,偶然显著的概率也越高。在正式研究中,应关注软件提供的校正选项或在报告中说明显著性解释的限制。

方法比较:Anselin Local Moran’s I、Global Moran’s I 与 Getis-Ord Gi*

空间统计工具很多,最容易混淆的是 Anselin Local Moran’s I、Global Moran’s I 和 Getis-Ord Gi*。它们都与空间自相关有关,但回答的问题不同。

方法 主要问题 输出结果 适合场景
Global Moran’s I 整个研究区是否存在空间自相关 一个全局统计量、Z 得分、P 值 先判断整体是否有空间集聚趋势
Anselin Local Moran’s I 哪些区域形成局部聚类或异常值 HH、LL、HL、LH 等局部类型 识别聚类与空间异常值
Getis-Ord Gi* 哪里是高值热点或低值冷点 热点、冷点及显著性等级 强调热点冷点识别,不重点识别异常值

如果你的目标是找“哪里高值集中、哪里低值集中”,Getis-Ord Gi* 很直观。如果你的目标还包括识别“高值被低值包围”或“低值出现在高值区中”的异常情况,Anselin Local Moran’s I 更合适。

在实际项目中,可以先使用 Global Moran’s I 判断总体空间自相关,再使用 Anselin Local Moran’s I 定位局部聚类与异常值,最后结合业务图层和实地知识解释结果。

检查清单:提交分析成果前要确认什么

  • 是否明确说明分析指标的含义、单位和统计口径。
  • 是否使用了可比较指标,例如率、密度、人均值,而不是简单总量。
  • 是否检查并处理了空值、异常值和无效几何。
  • 是否说明空间权重矩阵的选择理由。
  • 是否检查孤立区域或邻居数量过少的空间单元。
  • 是否同时查看了聚类类型、Z 得分和 P 值。
  • 是否避免把所有高值区域都解释为热点。
  • 是否对 HH、LL、HL、LH 分别进行业务解释。
  • 是否做过参数敏感性检查,例如更换邻接方式或距离阈值。
  • 是否在地图图例中清楚标注显著性和分类含义。

FAQ:关于 GIS 聚类与异常值分析的常见问题

Anselin Local Moran’s I 和热点分析有什么区别?

Anselin Local Moran’s I 可以识别 HH、LL、HL、LH,其中 HL 和 LH 是异常值类型。热点分析通常指 Getis-Ord Gi*,更强调高值热点和低值冷点,不直接突出“高值被低值包围”这类异常关系。

为什么我的结果中没有 HH 或 LL?

可能原因包括指标本身没有明显空间自相关、空间权重设置不合适、距离阈值过大或过小、样本数量不足、数据噪声较强,或者显著性阈值设置较严格。建议先运行 Global Moran’s I,并检查邻居数量分布。

Anselin Local Moran’s I 可以用于点数据吗?

可以,但需要合理定义点之间的邻近关系,例如固定距离带或 K 近邻。如果点代表事件位置,很多情况下还需要先聚合到网格或行政区,再用事件率或密度进行分析。

空间权重应该选 Queen 邻接还是距离阈值?

如果是连续行政区面数据,Queen 邻接常用于探索分析。如果对象不是规则相邻,或者是点数据、设施点、监测站点,距离阈值或 K 近邻通常更合适。选择依据应来自地理过程本身,而不是只看哪种结果更漂亮。

HL 和 LH 一定是数据错误吗?

不一定。HL 和 LH 表示局部空间异常值,可能是真实现象,也可能是统计口径、采样误差、边界效应或数据质量问题造成的。正确做法是结合原始数据、邻近区域和业务背景进一步核查。

为什么同一数据在不同软件中结果不完全一样?

常见原因包括空间权重定义不同、行标准化方式不同、距离计算方式不同、显著性检验方法不同、投影坐标系不同,以及缺失值处理方式不同。比较软件结果时,应先统一参数和数据预处理流程。

结论:把聚类结果当作分析线索,而不是最终答案

Anselin Local Moran’s I 是 GIS 在空间统计学中的重要工具,特别适合做聚类与异常值分析。它能帮助我们从专题图的直观判断,进一步走向有统计检验支撑的空间解释。

实际使用时,要记住三点:第一,先确认指标是否可比较;第二,认真选择空间权重矩阵;第三,结合显著性和业务背景解释 HH、LL、HL、LH。只有这样,Anselin Local Moran’s I 的结果才不会停留在“软件生成了一张漂亮地图”,而是真正服务于空间决策、问题定位和后续调查。