Rで解析:Google Maps APIを利用して距離を取得「gmapsdistance」パッケージ

Rの解析に役に立つ記事
スポンサーリンク

Google Maps APIを利用して2点間の距離を取得するパッケージの紹介です。パッケージを利用中に日本語でエラーが出るときは「stringi」パッケージのstri_encodeコマンドがお勧めです。なお、利用にはGoogle Maps PlatformでAPIの利用登録が必要です。1 日の割り当て、1 か月あたり 28,500 回まで無料です。

Google Maps Platform:https://mapsplatform.google.com/intl/ja_ALL/

パッケージのバージョンは3.4。実行コマンドはwindows 11のR version 4.1.2で確認しています。

スポンサーリンク

パッケージのインストール

下記コマンドを実行してください。

#パッケージのインストール
install.packages("gmapsdistance")

コマンドの紹介

詳細はコマンド、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("gmapsdistance")
#検索に日本語を使用するため
#「stringi」パッケージのstri_encodeコマンドを利用
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}

#指定した場所間の距離を取得:gmapsdistanceコマンド
#出発地点:orignオプション
#到着地点:destinationオプション
#交通手段を指定:modeオプション;"bicycling","walking","transit","driving"
#利用しない交通手段を指定:avoidオプション;"tolls","highways","ferries","indoor"
GetDistance <- gmapsdistance(origin = c(stri_encode("日本+京都", "", "utf-8"),
                                        stri_encode("日本+名古屋", "", "utf-8")),
                             destination = c(stri_encode("日本+東京", "", "utf-8"),
                                             stri_encode("日本+大阪", "", "utf-8")),
                             mode = "driving",
                             avoid = "highways")
#確認
GetDistance
$Time
or Time.日本+東京 Time.日本+大阪
1  日本+京都          41586           6649
2 日本+名古屋          31014          15317

$Distance
or Distance.日本+東京 Distance.日本+大阪
1  日本+京都             508470              51202
2 日本+名古屋             376122             188842

$Status
or status.日本+東京 status.日本+大阪
1  日本+京都               OK               OK
2 日本+名古屋               OK               OK

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました