日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

地理探测器学习

發布時間:2023/12/10 编程问答 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 地理探测器学习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、為什么選擇了地理探測器

(1)因變量Y和自變量x的兩個空間分布的一致性也僅映了這兩個變量的關聯性,這種關聯既包括線性部分,也包括非線性部分,可以用地理探測器度量這種關聯性。線性回歸模型和地理探測器的目的都是通過建立兩個變量的統計關系,進而提示可能的因果關系。
(2)當線性回歸顯著時,地理探測器必然顯著;當線性回歸不顯著時,地理探測器仍然可能顯著;兩變量只要有關系,地理探測器就能夠探測出。

(3)地理探測器原理保證了其對多自變量共線性免疫。

二、地理探測器原理

地理探測器是分析空間分異性的工具,其核心思想是—如果某個自變量對某個因變量有影響,那么自變量的空間分布和因變量的空間分布應該趨干一致。
地理探測器括四個探測器:
(1)因子探測器:探測自變量多大程度上解釋了因變量的空間分異;
(2)交互探測器:交互探測可以定量表征兩個自變量對于因變量格局的作用關系;
(3)風險探測器:用于判斷兩個子區域間的屬性均值是否有顯著性的差別,揭示了哪些自變量是因變量顯著的高值或低值,以t統計量來檢驗;
(4)生態探測器:用于比較兩個自變量對因變量屬性的空間分布的影響是否有顯著的差異,即比較不同自變量解釋力的相對重要性差異,以F統計量來衡量;

三、地理探測器應用

1、地理探測器(excel)下載地址:http://www.geodetector.cn/

2、地理探測器-R包“GD”使用應用:

(1)安裝Rtool:https://cran.r-project.org/bin/windows/Rtools/

僅在源代碼中使用C / C ++ / Fortran代碼構建R軟件包時才需要rtools。

(2)安裝地理探測器-R包“GD”

> #安裝GD包 > install.packages("GD") > #引用GD包 > library(GD)

(3)地理探測器-R包“GD”應用代碼

csv表格內只留了需要的自變量和因變量,且自變量均為數字類型,而其他多于的屬性都刪掉了,gdm才能運行gdm,不知道為什么。

> #讀取文件 > data <- read.csv("E:/geodetector/data.csv", header = TRUE, sep = ",", fileEncoding = 'GBK') > #設置最優離散化的可選參數 > #可選方法:相等、自然、分位數、幾何、sd和手動 > discmethod <- c("equal","natural","quantile","geometric","sd") > #空間數據離散化分成4~6類 > discitv <- c(4:6) > #定義連續變量 > #進行空間數據離散化處理 > continuous_variable <- colnames(data)[-c(1,17)] > #調用gdm函數 > result <- gdm(GKDM ~ ., continuous_variable = continuous_variable, data = data, discmethod = discmethod, discitv = discitv) > #顯示分析結果 > result > #顯示分析圖表 > plot(result)

遇到的錯誤

(1)生成R包需要Rtools,但當前未安裝,下載Rtools并重新啟動RStudio。

Warning in install.packages :unable to access index for repository
https://cran.rstudio.com/src/contrib:無法打開URL’https://cran.rstudio.com/src/contrib/PACKAGES’
WARNING: Rtools is required to build R packages but is not currently installed. Please download and install the appropriate version of Rtools before proceeding:

(2) 變量不是數字

Error in disc(x, f.itv, method = f.method) : var is not numeric

> #不想返工一下子將所有變量轉數字 > data$GKDM=as.numeric(data$GKDM) > data$POPU=as.numeric(data$POPU) > data$GDP=as.numeric(data$GDP) > data$ONE=as.numeric(data$ONE) > data$TWO=as.numeric(data$TWO) > data$THREE=as.numeric(data$THREE) > data$GDZCTZ=as.numeric(data$GDZCTZ)

(3)需要TRUE/FALSE值的地方不可以用缺少值

Error in if (formula.vars[2] == “.”) { :
需要TRUE/FALSE值的地方不可以用缺少值

> #計算數據集中的缺失值總數 > sum(is.na(data)) > #當一筆數據是完整的,回傳TRUE;當一筆數據有遺漏值,回傳FALSE > complete.cases(data) > #返回缺失值的位置 > which(is.na(data))

在檢查的過程中沒有缺失值,也不懂為什么報錯,當我把所有不要的變量刪除后,就可以成功運行了。

【參考資料】
空間數據分析教程-王勁峰-科學出版社
地理探測器:原理與展望-王勁峰-地理學報
基于地理探測器的北京市居民宜居滿意度影響機理-湛東升-地理科學進展
GD-參考手冊

總結

以上是生活随笔為你收集整理的地理探测器学习的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。