R语言实现地理探测器的流程及代码
R語言實現地理探測器的流程及代碼
geodetector包涵蓋五個函數:factor_detector,interaction_detector,risk_detector,ecological_detector和geodetector。前四個功能實現因子檢測器,交互檢測器,風險檢測器和生態檢測器的計算,可以使用表數據計算,例如csv格式。最后一個函數geodetector是一個輔助函數,可用于實現shapefile格式映射數據的計算。
官網有詳細的介紹和教程,地址如下:
https://cran.r-project.org/web/packages/geodetector/vignettes/geodetector.html#factor-detector
因本人在寫論文的過程中運用到,自學咨詢了之后,在此記錄一下操作流程,方便大家學習。在文本介紹csv格式的數據的前4個函數(factor_detector,interaction_detector,risk_detector,ecological_detector)在R包中的實現。
1 數據預處理
X 處理為離散型數據(對于柵格數據,可用柵格重分類;對于矢量數據(漁網),在mapGIS中建立gdb文件,將數據導入文件地理數據庫,屬性-符號化-將字段分級,或矢量數據分級顯示之后,convert symbology to representation)
Y 處理為點數據(漁網)
2 包的加載及數據導入(操作時將”文件夾名稱“替換成需處理的文件即可)
install.packages(“geodetector”) 加載包
library(geodetector) 引用包
install.packages(“readr”)
library(readr)
read_csv(“文件夾名稱.csv”) 讀自己命名的數據 (注意,數據要放在當前工作的文件夾中)
文件夾名稱=read_csv(“文件夾名稱.csv”) 數據賦值
文件夾名稱 指定文件
2.1因子探測器
factor_detector(“Y”, “X”, as.data.frame(文件夾名稱)) 其中as函數為轉換為數據框
2.2交互探測**
interaction_detector (17,c(2,3,4,5,6,7,8,9,10,11),as.data.frame(database))
其中當”X"為多個因子的時候,可以用c(2,3,4,5,6,7,8,9,10,11) 表示,數字代表列號。
2.3風險探測
risk_detector(17,c(2,3,4,5,6,7,8,9,10,11),as.data.frame(database))
2.4生態探測
ecological_detector(17,c(2,3,4,5,6,7,8,9,10,11),as.data.frame(database))
3 導出結果
result_1<-factor_detector(17,c(2,3,4,5,6,7,8,9,10,11),as.data.frame(database))
write.csv(result_1,’./factor_detector_CMI.csv’) 將結果寫入csv文件
總結
以上是生活随笔為你收集整理的R语言实现地理探测器的流程及代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Leetcode][第95题][JAV
- 下一篇: 一个强大的工具来模拟数百万并发用户负