作者BUQ (固執又暴燥)
看板R_Language
標題[問題] 反向地理編碼(用座標查行政區)
時間Fri Apr 14 12:23:25 2017
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
請把以下不需要的部份刪除
一個月新手(沒寫過程式,R 是我的第一次)
[問題敘述]:
小弟有41*86=3526筆資料
每個資料都是 WGS84座標系統
要如何知道每個座標所在的行政區...例如:新北市 土城區
各方高手有什麼解法比較快的....
小弟現在是一個解法都沒有
或者 相關的套件 關鍵字 也行
座標格式如下 一行經度 一行緯度
[1] 121.998
[1] 21.52036
[程式範例]:
[環境敘述]:
請提供 sessionInfo() 的輸出結果,
R version 3.3.3 (2017-03-06)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
[關鍵字]: 反向地理編碼
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.135.58.147
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1492143808.A.CC7.html
1F:→ cywhale: 不知道有無較快方法? download政府開放圖資取得shp file 04/14 14:11
3F:→ cywhale: 利用sp package point.in.polygon()即可取得所在polygon 04/14 14:13
4F:→ cywhale: 有了所在polygon index可以回頭查你import shape file中 04/14 14:15
5F:→ cywhale: countycode, countyname, towncode, townname等you want 04/14 14:16
6F:→ BUQ: 解壓縮有好多個檔案哪一個?要怎麼匯進R? 04/14 14:38
7F:→ BUQ: 謝謝C大..已解決...晚上貼解法 04/14 15:19
8F:推 Edster: 用 point in polygon 等應該已經是最快的了. 04/14 15:40
9F:→ BUQ: 我是用別的方法解的 但是很想要知道高手們說的辦法.. 04/14 15:54
10F:→ BUQ: 可是我看不懂...沒有沒詳細一點的講解...<(_ _)>先謝謝了 04/14 15:55
11F:→ BUQ: 請問匯入是用哪個套件的哪個函數? 04/14 22:53
12F:→ locka: 期待原po大大分享不用比對台灣的區界地圖的解法~XD 04/14 23:17
13F:→ BUQ: 好喔.... 04/14 23:24
今早才在本板找到一個文章教我
library(sos)#超強找套件 只要下關鍵字就好
findFn("Reverse geocoding")
結果 跑出一個網址
http://localhost:24955/session/file102864b750ad.html
我就選了 第一個來試用 (分數很高)
library(googleway)
API="這請打上自己向google map API key" #申請是免費的 但有訪問上限
kk=google_reverse_geocode(location =c(23.48742,120.00024),language="zh-TW",key=API)
kk$results$address_components[[1]]$long_name
[1] "海埔北路" "鰲鼓村" "東石鄉" "嘉義縣" "台灣" "614"
最後補上API申請網址
https://developers.google.com/maps/documentation/javascript/get-api-key?hl=zh-tw
※ 編輯: BUQ (1.162.241.154), 04/14/2017 23:45:49
※ 編輯: BUQ (1.162.241.154), 04/14/2017 23:46:58
14F:推 locka: 感謝分享,原來也可以這樣!cool~ 04/14 23:50
15F:推 cywhale: 這解法第一次看到,感謝分享~ 04/15 10:02
16F:→ BUQ: 我也是運氣好找到的 板上大部分文章基本上我是都看不懂太高端 04/15 10:35