ggmap 패키지를 사용하여 주소에서 위도 경도 데이터를 얻습니다.

6191 단어 Rggmapleaflet
문자의 입력에 대해, 위도 경도의 데이터를 취득하는 방법의 하나로, 자신이 평상시 사용하는 방법을 기록해 둡니다.

자신이 사용하는 것은 CRAN에도 올라가고, 사용법이 매우 간단한, ggmap 패키지 입니다.
  • ggmap 공식 문서
  • ggmap 개발 (GitHub) 페이지

  • 설정


    # install.packages("ggmap") # まだインストールしていない人用に
    # devtools::install_github("dkahle/ggmap") #開発版をインストールしたい場合
    
    library(ggmap)
    register_google("XXXXXXXXXXXXXXXXXXXXXXXXXXX") # 個人で取得したgoogle apiの登録が必要
    

    이것으로 설정이 완료.

    주소에서 위도 경도를 취하는 방법



    ggmap 패키지는 geocode()라는 함수를 제공하며 첫 번째 인수 location에 문자열로 주소를 입력하여 위도 경도 데이터를 얻을 수 있습니다.


    Place
    위치


    도쿄역
    도쿄도 지요다구 마루노우치 1가

    도쿄 스카이 트리
    도쿄도 스미다구 오시아게 1가 1-2

    도요스 마켓
    도쿄도 고토구 도요스 6가 3


    위와 같은 데이터가 있고 오른쪽에 위도와 경도의 칼럼을 삽입하고 싶은 경우에는 아래와 같은 처리를 합니다.
    dat %>% 
      mutate(緯度 = geocode(Location)$lat,
             経度 = geocode(Location)$lon)
    
                 Place                   Location     緯度     経度
    1           東京駅 東京都千代田区丸の内1丁目 35.68124 139.7671
    2 東京スカイツリー 東京都墨田区押上1丁目12 35.71006 139.8107
    3   豊洲マーケット   東京都江東区豊洲6丁目3 35.64574 139.7879
    

    시각화



    이와 같이 문자열로 기록된 주소를 좌표 데이터로서 취급할 수 있는 것으로 이하와 같은 가시화도 가능합니다.
    library(leaflet)
    leaflet(data = dat) %>% 
      addProviderTiles("Stamen.TonerLite") %>% 
      setView(lng = mean(dat$経度), lat = mean(dat$緯度), zoom = 12.5) %>% 
      addCircleMarkers(~経度, ~緯度, popup = ~paste(Place, ":", Location),
                       clusterOptions = markerClusterOptions())
    



    이렇게 간단하게 조작을 할 수 있기 때문에 자신으로서는 활용하고 있습니다. 모 nate에서 개최중인 학생 한정 공모 등에서 활용도 가능합니다.

    좋은 웹페이지 즐겨찾기