地理探测器R语言实现:geodetector
本文介绍基于R语言中的geodetector包,依据多张栅格图像数据,实现地理探测器(Geodetector)操作的详细方法。需要说明的是,在R语言中进行地理探测器操作,可以分别通过geodetector包、GD包等2个包实现。其中,geodetector包是地理探测器模型的原作者团队早先开发的,其需要保证输入的自变量数据已经全部为类别数据;而GD包则是另外一位学者开发的,其可以自动实现自变量数据的最优离散化方法选取与执行——即我们可以直接把自变量带入这一包中,无需额外进行数据的离散化。本文介绍的是基于前者,即geodetector包实现地理探测器的具体操作;基于后者的方法,我们将在后期的博客中介绍。此外,如果希望基于Excel实现地理探测器,大家可以参考地理探测器Geodetector下载、使用、结果分析方法这篇文章。
1 包的配置与导入
首先,我们可以先到geodetector包在R语言中的官方网站,大致了解一下该包的简要介绍、开发团队、其他依赖包等基本信息;如下图所示。
随后,我们开始geodetector包的下载与安装。输入如下所示的代码,即可开始包的下载与安装过程。
install.packages("geodetector") 输入代码后,按下回车键,运行代码;如下图所示。
随后,将自动下载并配置geodetector包;此外,在安装geodetector包时,会自动将其所需依赖的其他包(如果在此之前没有配置过)都一并配置好,非常方便。
接下来,输入如下的代码,将geodetector包导入。
library(geodetector) 此时,在RStudio右下方的“Packages”中,可以看到geodetector包处于选中的状态,表明其已经配置成功,且完成导入。
2 栅格数据读取与预处理
接下来,我们首先依据基于R语言的raster包读取遥感影像中提到的方法,读取栅格数据。因为我们是要基于栅格数据完成地理探测器的分析,因此很显然是需要批量导入多张栅格数据的。
读取栅格数据完毕后,我们通过如下代码,基于getValues()函数,从原本的RasterStack格式的数据中,将栅格数据的像元数值提取出来;随后,基于View()函数显示出这一变量。
tif_file_all_matrix
页:
[1]