本文参考王劲峰老师的《地理探测器:原理与展望》,原文讲得非常详尽。本文结合自己的理解对GeoDetector的原理与功能进行了整理。
基本概念
1、空间统计学:以空间自相关为理论基础,突破了经典统计学的独立同分布假设前提。
2、空间统计学工具:空间自相关检验如Moran's I、半变异函数等;热点探测如Gi、LISA等;空间插值方法如Kriging(克里金)、贝叶斯最大熵BME等;空间回归如SAR、GWR、空间贝叶斯层次模型BHM等。
3、空间分层异质性:简称空间分异性/区异性,指层内方差小于层间方差的地理现象,是空间数据的一大特性。那什么是“层”呢?“层”是统计学的概念,对应地理上的类(classes)或子区域(sub-region)。目前用于分类或分区的方法很多如K-means、SOM等,但是针对空间分异性的统计学方法有限。
地理探测器的原理
核心思想
地理探测器的核心思想是:如果某个自变量对某个因变量有重要影响,那么自变量和因变量的空间分布应该具有相似性。
四大功能
1、分异及因子探测
探测Y在因子X的分层中的空间分异性,计算因子X多大程度上解释了属性Y的空间分异,用q值度量。q值越大,则自变量对属性Y的解释力越强。q的值域为[0,1],当q=0时,表明因子X与Y没有任何关系,当q=1时,表明因子X完全控制了Y的空间分布。q值表示X解释了100×q%的Y。
h = 1, …, L为变量Y或因子X的分层 (Strata),即分类或分区;Nh和N分别为层h和全区的单元数; σh 2 和 σ2 分别是层h和全区的Y值的方差。SSW和SST分别为层内方差之和 (Within Sum of Squares) 和全区总方差 (Total Sum of Squares)。
2、交互作用探测
识别不同风险因子Xs之间的交互作用,即评估因子X1和X2共同作用时是否会增加或减弱对因变量 Y 的解释力,或这些因子对Y的影响是相互独立的。评估的方法是首先分别计算两种因子 X1 和 X2 对 Y 的q 值 : q(X1) 和 q(X2),并且计算它们交互(叠加变量 X1 和 X2 两个图层相切所形成的新的多边形分布,图2)时的q值: q(X1 ∩ X2) ,并对q(X1)、q(X2)与q(X1 ∩ X2)进行比较。两个因子之间的关系可分为以下几类:
3、风险区探测
用于判断两个子区域间的Y的属性均值是否有显著差别,用t统计量来检验。若在置信水平α下拒绝零假设H0,则认为两个子区域(或两个子类)间对应的Y属性均值存在明显的差异。
4、生态探测
用于比较两因子X1和X2对属性Y的空间分布的影响是否具有显著的差异,用F统计量来衡量,同样的,若在置信水平α下拒绝零假设H0,则表明两个因子X1和X2对属性Y的空间分布的影响存在显著的差异。
地理探测器的实际应用
我能了解到的目前实现地理探测器的方法有三个:
1、Excel版地理探测器软件GeoDetector,可以直接在excel中一站式操作,下载网址:geodetector。
2、R版GD包,参考网址:GD。
3、Python版开源代码GeoDetector,Github下载网址:GeoDetector;作者博客网址:CSDN。这个是2023.8刚刚更新的代码,准确性和稳定性目前我还没有测试过。
地理探测器使用步骤包括:
(1) 数据的收集与整理:这些数据包括因变量Y和自变量数据X。自变量应为类型量;如果自变量为数值量,则需要进行离散化处理。离散可以基于专家知识,也可以直接等分或使用分类算法如K-means等。注意:不同的分类方式会导致分析结果的不同,可能需要多次尝试。
(2) 将样本 (Y, X) 读入地理探测器软件,然后运行软件,结果主要包括4个部分:①比较俩区域因变量均值是否有显著差异(风险区探测);②自变量X对因变量的解释力;③不同的两个自变量对因变量的影响是否有显著的差异(生态探测);④这些自变量对因变量影响的交互作用。
如果数据量不超过32400,还是建议使用Excel版的地理探测器,方便好用。