SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

「PyData.Tokyo Meetup」イベントレポート

Pythonを使って地理情報の分析・可視化をしてみよう~PyData.Tokyo Meetup #9イベントレポート

  • X ポスト
  • このエントリーをはてなブックマークに追加

Pythonライブラリを活用すれば地理情報データが簡単に扱える!?

 仙石さん曰く、地理情報データの解析では昔はベンダーが提供するツールが主に使われてきたのですが、ここ数年でその流れが急激に変わり、最近ではオープンソースのツールやライブラリが一気に整備され始めてきました。特に最近は地理情報データを利用するためのPython製のツールが数多く作られてきており、一通りの地理情報データ解析がPythonの環境で実行できるようになってきているとのことです。

 講演では、Python製のツールとしてGeoPandasやpyprojなどを紹介していただきました。

 GeoPandasとは、Pythonのデータ操作のライブラリであるPandasを拡張し、地理情報データを扱えるようにしたライブラリです。地理情報データ特有の処理をPandasの機能を利用して高速に操作できます。また、Jupyter Notebook上でGeoPandasを利用すれば、foliumなどの地図描画ライブラリと連携して地図上に地理情報データの可視化を簡単に実行できます。

 例えば、以下の図は品川区のAEDの設置場所をGeoPandasを利用して可視化したものです。

 まず、下記のコードでは上記のデモで利用するライブラリである、PandasとGeoPandasを呼び出した上で、Pandasを利用してCSVファイルを読み込んでいます。

 次にpandas.DataFrameのデータ形式をgeopandas.GeoDataFrame形式に変換します。具体的には緯度、経度カラムの値をGeoDataFrameのgeometoryに変換しています。

 最後にデータの可視化をします。今回可視化では、foliumライブラリを利用します。同ライブラリはLeaflet.jsのPythonラッパーであり、Leaflet.jsで作成される地図をPythonから制御できます。

 下記のコードは、先ほど変換したGeoDataFrameデータを用いてfoliumオブジェクトを生成し、地図データとして可視化する、という処理をしています。

 ここで注目すべき点としては、上記のことを実施するにあたって、必要なソースコードの量がわずか11行だけであるという点です。これだけの短いコードを実行するだけで地図データの読み込み、地図データの加工および地図データの描画までできてしまいます。

 この例からも分かる通り、Pythonは地理情報解析を扱う際に大変優れた環境であることが分かります。

次のページ
地理情報データを解析する際の課題

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
「PyData.Tokyo Meetup」イベントレポート連載記事一覧

もっと読む

この記事の著者

シバタアキラ(シバタ アキラ)

データサイエンティスト@DataRobot, Inc. PyData.Tokyoオーガナイザー 人工知能を使ったデータ分析によるビジネス価値の創出が専門分野。物理学博士。NYU研究員時代にデータサイエンティストとして加速器データの統計モデル構築を行い「神の素粒子」ヒッグスボゾン発見に貢献。その後ボストン・コンサルティング・グループでコンサルタント。白ヤギコーポレーションCEOを経て現職 Twitter: @madyagi Facebook: Akira Shibata DATAブログ: http://ashibata.com DataRobot, Incウェブサイト: http://datarobot.com

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

池内 孝啓(イケウチ タカヒロ)

神奈川県横浜市出身。1984年生まれ。ソフトウェア開発会社、インフラサービス提供会社を経て2011年3月株式会社ALBERT入社。クラウドコンピューティングを活用したマーケティングプラットフォーム事業の立ち上げに携わる。2014年1月に同社執行役員に就任。2015年8月株式会社ユーリエを設立。同社代表取締役社長兼CTO。2014年にコミュニティ PyData.Tokyo を共同で立ち上げるなど、Python と PyData ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

山本 光穂(ヤマモト ミツオ)

デンソーアイティーラボラトリ シニアエンジニア。2006年デンソーアイティーラボラトリ入社以来、時空間情報閲覧サービス(製品名:今昔散歩)や情報検索等に関する研究に従事。特に最近はドライバーの意図推定技術や同推定結果に基づく最適な情報提示技術に興味を持つ。趣味はマウンテンバイクとイングレス(Resistance)。Facebook: https://www.facebook.com/mitsuo.yamamoto.0112 Twitter: @kaita

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9765 2016/11/15 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング