空间计量
空间自相关 (Moran's I)
先问一个定量属性在地图上是扎堆、交错,还是接近随机,再用 I、E[I]、Z 与 P 给出全局判断,而不是先估一条回归斜率。
这篇能回答什么
全局 Moran's I 回答的是:「这个定量属性的高值是不是更爱挨着高值」。Cliff 与 Ord 把每个位置的标准化取值 z 与它的空间滞后 Wz 做成协方差型统计量。I 明显大于随机期望,表示高–高、低–低成片;I 明显小于期望,表示高低交错。本页教学表对变量 Y 给出 全局 Moran's I = 0.2946,结论写「存在显著的正向空间自相关 (空间集聚)」。
它和线性回归不是同一句话。OLS 假定误差彼此独立;若你先用 X 拟合 Y,再对残差算 Moran,显著的残差 I 说明独立性已经破掉,斜率的标准误不可信,下一步才是空间杜宾模型这类把 WY、WX 写进方程的规格。本页绑定的是原始 Y,不是残差:I = 0.2946 只能证明属性本身在 K=5 邻域里抱团,不能自动写成「X 对邻居有溢出」。
什么时候不该用
有效点少于 10 个时构不成稳定的邻接。没有真实经纬度、只有行政编号时,不要拿行号当坐标。问题若是「X 每增加一单位,本地 Y 变多少,邻居的 X 会不会进来」,主分析写杜宾,莫兰只作前置诊断。两个定量列的线性伴随关系用Pearson 相关,它没有 W。面板里吸收个体均值用固定效应,那是时间重复观测,不是一张截面地图。
如何选择方法
先分清你要的是一张诊断还是一套斜率。只想知道 Y 会不会在地图上扎堆 → 本页。已经怀疑 OLS 把空间结构吞进残差 → 先保留 OLS 拟合,把残差当作新的「观测值」再跑一次本方法,和直接对 Y 的 I 对照。要同时写下邻居的 Y 与邻居的 X → 杜宾。还没有坐标、只有成绩表 → 普通回归或相关。
全局 Moran's I:1 列纬度、1 列经度、1 个定量观测值;输出 I、E[I]、Z、P 与莫兰散点。
对 OLS 残差再算 I:同一套 W,检验的是「解释变量吃掉线性部分之后,误差还剩不剩空间结构」。
空间杜宾:Y、X 加上同一套坐标,估计 ρ 与 WX,不再只给一个标量 I。
普通 OLS:没有 W;残差 I 显著时不要继续把 t 当成独立样本。
输入、输出与限制
输入
纬度、经度、观测值都必须是定量。教学工作表「spatial」四列依次为纬度、经度、Y、X;本方法只吃前三列,X 留到杜宾页。缺失按三列成对删除。
纬度:1 列定量。
经度:1 列定量。
观测值:1 列定量(本例为 Y)。
输出
结果表列:指标、计算值、统计学意义。四行依次是全局 Moran's I、期望指数 (E[I])、Z 检验值、P 值。表注写明 K 近邻条数、是否行标准化、有效样本量。图为标准化 z 对空间滞后 Wz 的莫兰散点,四个象限对应高–高、低–高、低–低、高–低。
产品限制
有效点至少 10 个,最多纳入约 2000 个位置。
邻接固定为 K=5 最近邻,再做行标准化,使每一行权重和为 1。
P 值来自正态近似(p_norm),不是 999 次随机置换。
本页输出全局指数,不单独列出每个点的 LISA 分类人数。
这些规则来自 StatsX / PySAL 实现,不要拿 Queen 邻接或 Rook 邻接的软件默认去逐格硬对。
案例
研究问题。 一份截面记录了 60 个位置的纬度、经度、属性 Y 与协变量 X。研究者先要判断 Y 在地图上是否成片,再决定能不能把 Y 对 X 的普通最小二乘当成独立样本。
教学示例在空间工作簿的「spatial」页,有效位置 60。观测值选 Y,不要把 X 误当作被检验属性。本页 I = 0.2946,E[I] = -0.0169,Z = 4.3633,P <0.001(显著)。采用 K-Nearest Neighbors (K=5) 规则并进行行标准化构建空间权重矩阵。有效样本量=60。 下载后按同样角色可复现该表。
在 StatsX 中操作
步骤 1 · 导入坐标表
把空间示例 xlsx 拖进工作台,切到工作表「spatial」。确认是 60 行坐标,而不是 factors 或 counts 页。
步骤 2 · 核对三列类型
画像里纬度、经度、Y 应为定量。重复坐标会让 5 个邻居退化成同一点,先扫一眼唯一值。
步骤 3 · 点选莫兰指数
目录搜「Moran」或「空间自相关」。不要点成空间杜宾——那一页还要解释变量 X。
步骤 4 · 只把 Y 放进观测值
纬度勾纬度,经度勾经度,观测值勾 Y。X 留空。运行后先看表注里的 N 是否仍是 60。
步骤 5 · 先读 I 再读 Z
对照 0.2946 与 −0.0169 的方向,再用 Z=4.3633 与 P<0.001 判断是不是抽样噪声。散点只帮助看象限,不以点的疏密改写 P。




如何阅读输出
下表由同一 60 个点在 StatsX 中对 Y 计算全局 Moran 得到。全局 Moran's I = 0.2946,统计学意义栏写「存在显著的正向空间自相关 (空间集聚)」。随机期望 E[I] = -0.0169,约等于 −1/(60−1)。Z = 4.3633,P <0.001,标记为「显著」。I 在期望右侧约 0.31,方向是正向集聚,不是高低交错。
| 指标 | 计算值 | 统计学意义 |
|---|---|---|
| 全局 Moran's I | 0.2946 | 存在显著的正向空间自相关 (空间集聚) |
| 期望指数 (E[I]) | -0.0169 | - |
| Z 检验值 | 4.3633 | - |
| P 值 | <0.001 | 显著 |
采用 K-Nearest Neighbors (K=5) 规则并进行行标准化构建空间权重矩阵。有效样本量=60。


阅读顺序:N 是否为 60 → I 相对 E[I] 的符号 → Z 与 P 是否过 α=0.05 → 再看散点落在哪个象限。本例 P<0.001,拒绝「Y 在这张 K=5 地图上随机」。若你另外用 X 对 Y 做 OLS,把残差再送进观测值角色:残差 I 若仍显著,独立误差假设失败,应改杜宾或至少改用空间稳健推断;残差 I 若掉到不显著,说明 X 已经吸收了大部分空间结构,莫兰显著只发生在原始 Y 上。两套 I 回答不同句子,不要只报一个。
理论与公式
记 n 个位置的取值为 y_i,行标准化权重为 w_{ij}(本实现 i 的 5 个最近邻非零,行和为 1)。令 \bar y 为均值,S_0=∑_i∑_j w_{ij}。全局指数为
随机化零假设下期望为 E[I]=−1/(n−1)。本例 n=60,故 E[I]=−0.0169,与表中期望指数一致。Z=(I−E[I])/√Var(I),P 由标准正态尾部给出。散点纵轴是空间滞后 Wz;第一、三象限贡献正的 I,第二、四象限贡献负的 I。对 OLS 残差 e=y−X\hatβ 把上式中的 y 换成 e,检验的是「线性部分被吃掉之后还剩多少空间协方差」。
注意事项
I 显著不是因果溢出:高值挨着高值,也可能是共同的未观测区域因子。
本页检验的是 Y,不是 X,也不是残差;残差 I 要另跑一次。
K=5 与行标准化写进表注;改 Queen 邻接或改 K,I 与 Z 都会动。
P 是正态近似,小样本或强偏态时与 999 次置换可能差一截。
全局 I 不能点名哪一个点是高–高热点,散点只给象限直觉。
坐标重复或缺失会改 N;N 对不上 60 时不要对抄 0.2946。
常见问题
参考文献
Moran, P. A. P. Notes on continuous stochastic phenomena[J]. Biometrika, 1950, 37(1/2): 17–23.
Cliff, A. D., Ord, J. K. Spatial Autocorrelation[M]. London: Pion, 1973.
Anselin, L. Local indicators of spatial association—LISA[J]. Geographical Analysis, 1995, 27(2): 93–115.
LeSage, J., Pace, R. K. Introduction to Spatial Econometrics[M]. Boca Raton: CRC Press, 2009.