「なんか最近地震多くない?」と思って調べ始めたら結果としてBI(ビジネスインテリジェンス)ツールを使った”なんちゃってビッグデータ解析”になってしまいました。4回くらいに分けて連載してみようと思います。
これはこれで優れたデータソースだと思うのですが、微妙な点が2つほど。
なので、グローバルな地震のオープンデータを提供しているサイトがないかと探していたら、アメリカ地質調査所(USGS)のサイト見つけました。
こちらのサイトでも気象庁同様、日付で範囲を絞って検索したり結果をマップに図示できるできるほか、緯度経度で地域を絞ることもできます。世界で観測された地震を網羅している点とCSVやKML(Google Earthに放り込めるデータ型)を指定して出力できる点がGoodなのです。さすがアメリカ様。
なので、最初は上記のアメリカ地質調査所で「直近3か月の地震マップ」を表示すればいいんじゃない?と思ったのですが、同時に表示できる件数に上限がありました。表示するサンプル数が少ないと客観的な評価はできないので、この方法は早々に断念。。
次に思い付いたのは、オープンデータの緯度・経度をGoogle MapのAPI(※)使って流し込めば「地震マップ」的なものができるんじゃない?APIを叩くプログラムをPythonで書けばいけそうじゃない?でした。
※API(Application Programming Interface):僕みたいな一般人がGoogle Mapを使ったプログラムを作るためにGoogle様が定めた使い方説明書的なもの
確かにこの方法だとマップは作れそうですが、マグニチュードなどの地震の特性をどう表現すればよいか悩んだのと、「きっと同じようなことに悩んでいる人はいるだろうから、既にツールなどの解決策はあるはず」というヨコシマな考えがよぎり、ググってみました。で、見つけたのがTableau(タブロー)という有名なBIツール。14日間はトライアル版を無料で使えるのです。
地図にマッピングしたいので、縦軸に緯度・横軸に経度を指定し、集計する項目にマグニチュードを指定するとあっという間に世界地図ができました。すごーい!
オレンジの大きい円ほどマグニチュードが大きく、青い小さい点ほどマグニチュードが小さいことを示します。プレート境界のある環太平法に震央が点在しているのが分かります。Google mapのように地図の拡大縮小も簡単です。日本周辺に絞るとこんな感じ。
うーん、確かにそれなりの地震が点在していますが、これだけでは最近多いのかわからないですよね。比較対象が必要です。まずは、一年前と比べてみます。一年前のこの日の直近3か月はこんな感じでした。
うーん、あまり顕著な違いを感じないですね。。「最近地震多くない?」は気のせいかもしれません。まぁ思い付きで始めた試みなので、必要なデータと解析方法が見つかっただけで今回は良しとしましょう!
次回は過去起こった大地震の直前3か月のデータをマッピングしてみて何か特徴がないか、今の直近のデータが大地震を予感させるものか?を検証してみようと思います!
「なんか最近地震多くない?」
世の中は新型コロナウイルス感染拡大一色ですが、Yahoo防災アプリでちょこちょこ地震速報を受信している気がします(Yahoo防災アプリは通知が早いので愛用しています)。あくまで個人の直感なので、何か定量的に裏付ける方法はないかとググってみました。地震のオープンデータを探してみる
まず見つけたのは気象庁の「震度データベース」です。日付範囲や地域・震度などを選択してデータの一覧や日本地図に震源をマッピングした見やすい地図がサクッと得られます。これはこれで優れたデータソースだと思うのですが、微妙な点が2つほど。
- 日本の情報しかない
- 東日本大震災など、地震の多くはプレートの移動によって起こります。環太平洋一帯にプレートの沈み込むエリアがあるので、日本だけでなく南米やオーストラリア・インドネシア沿岸の地震の傾向も見たほうがよさそうです。実際東日本大震災の直前にはニュージーランドのクライストチャーチで大きな地震がありましたし。
- データが扱いづらい
- データを年単位で一括ダウンロードできるのですが、タイトルレコードがないこと・区切り文字のないことから、BIツールなりエクセルなりに流し込むにはCSV形式(カンマで区切られたデータ)にするなど、少し加工しないといけなさそうです(僕のスキルの問題かもしれないですが)。
なので、グローバルな地震のオープンデータを提供しているサイトがないかと探していたら、アメリカ地質調査所(USGS)のサイト見つけました。
こちらのサイトでも気象庁同様、日付で範囲を絞って検索したり結果をマップに図示できるできるほか、緯度経度で地域を絞ることもできます。世界で観測された地震を網羅している点とCSVやKML(Google Earthに放り込めるデータ型)を指定して出力できる点がGoodなのです。さすがアメリカ様。
オープンデータの解析方法を考える
解析するデータを見つけた次は、どうやって解析するかを考えないといけないです。もともと、「オープンデータから直近3か月で起きた地震をマグニチュード別でマッピングしてみて世界的に日本近辺で地震がいつもより多いのか?」みたいなことを検証できればいいかなと思っていました。なので、最初は上記のアメリカ地質調査所で「直近3か月の地震マップ」を表示すればいいんじゃない?と思ったのですが、同時に表示できる件数に上限がありました。表示するサンプル数が少ないと客観的な評価はできないので、この方法は早々に断念。。
次に思い付いたのは、オープンデータの緯度・経度をGoogle MapのAPI(※)使って流し込めば「地震マップ」的なものができるんじゃない?APIを叩くプログラムをPythonで書けばいけそうじゃない?でした。
※API(Application Programming Interface):僕みたいな一般人がGoogle Mapを使ったプログラムを作るためにGoogle様が定めた使い方説明書的なもの
確かにこの方法だとマップは作れそうですが、マグニチュードなどの地震の特性をどう表現すればよいか悩んだのと、「きっと同じようなことに悩んでいる人はいるだろうから、既にツールなどの解決策はあるはず」というヨコシマな考えがよぎり、ググってみました。で、見つけたのがTableau(タブロー)という有名なBIツール。14日間はトライアル版を無料で使えるのです。
とりあえずデータを放り込んでみる
アメリカ地質調査所のサイトから直近3か月分のデータをCSV形式でダウンロードし、Tableauに放り込んでみます。チュートリアルをざっと読んで勢いで操作します。割と直感的に操作できるのがすごいのです。参考にしたチュートリアル
マップ表示してみた
読み込んだデータには発生した地震の日時や震央の緯度・経度、マグニチュードなどの情報が含まれています。Tableauのワークシートはエクセルのピボットデーブルに似ていて、縦軸・横軸・集計する項目に読み込んだデータ系列名を指定していきます。地図にマッピングしたいので、縦軸に緯度・横軸に経度を指定し、集計する項目にマグニチュードを指定するとあっという間に世界地図ができました。すごーい!
オレンジの大きい円ほどマグニチュードが大きく、青い小さい点ほどマグニチュードが小さいことを示します。プレート境界のある環太平法に震央が点在しているのが分かります。Google mapのように地図の拡大縮小も簡単です。日本周辺に絞るとこんな感じ。
うーん、確かにそれなりの地震が点在していますが、これだけでは最近多いのかわからないですよね。比較対象が必要です。まずは、一年前と比べてみます。一年前のこの日の直近3か月はこんな感じでした。
うーん、あまり顕著な違いを感じないですね。。「最近地震多くない?」は気のせいかもしれません。まぁ思い付きで始めた試みなので、必要なデータと解析方法が見つかっただけで今回は良しとしましょう!
次回は過去起こった大地震の直前3か月のデータをマッピングしてみて何か特徴がないか、今の直近のデータが大地震を予感させるものか?を検証してみようと思います!