前言
最优参数地理探测器(OPGD)是对地理探测器(geodetector)的改进,可以实现自动实现自变量数据的最优化离散,关于最优参数地理探测器的实现,可以参考下面的文章:
R语言GD包实现栅格图像地理探测器与参数离散化方法寻优
在R语言中,OPGD模型运行结束后,大部分教程往往只用print(gdm)
提取输出结果,如下图所示
这样提取出来的是全局的结果,并且无法保存到本地excel或者csv中,用class(gdm)
函数查看其变量类型可以发现显示的类型是gdm
然而,我们在实际研究的使用中,往往更加关心的是单因子探测器和交互作用探测器或者生态探测的结果,使用print(gdm)
函数固然可以打印全局结果,但后续的作图或者分析时只能一个个复制到excel中,费时费力,有没有什么方法可以直接将单因子探测或者交互作用探测的结果提取到excel中呢?
解决方案
使用下面这段代码可以将单因子探测器的结果输出为dataframe
gdm$Factor.detector$Factor
提取结果如下:
然后就可以愉快地将其输出到本地了,对于多个变量的情形十分方便。
# 保存单因子结果
write.csv(factor_q, "result1.csv", row.names = FALSE)
此外,使用下面的代码还可以提取交互作用探测器、生态探测器和风险探测器的结果
# 交互作用探测
gdm$Interaction.detector$Interaction
# 生态探测
gdm$Ecological.detector$Ecological
# 风险探测
gdm$Risk.detector$X1
gdm$Risk.detector$X2
gdm$Risk.detector$X3
gdm$Risk.detector$X4
gdm$Risk.detector$X5