NetworkXの本
PythonのライブラリであるNetworkXを取り扱っている書籍を紹介します。将来はGISやGephiなどと連携した使い方をしたいと思っています。
①秀和システム『Python実践データ分析100本ノック』
データ分析を対象とした本ですが、NetworkXについても取り扱っています。「はじめに」にも記載されていますが、初心者向けの本ではないため、pythonの基礎的な解説はありません。また、ライブラリの導入に関しても「Webで調べてください」といった形式です。
NetworkXの解説は基礎的なところから入っていますが、初心者の私からすると、途中から急に難しくなる印象があります。For文やIF文が繰り返しでてくると「うわー!」ってなってしまい追いついていけなくなります。
題材としては物流ネットワークとSNSの口コミについて図化するものが掲載されています。全ページ白黒です。Amazonなどでは評価も高いですので、バリバリできる中級者以上の方へはおすすめかも知れません。また、ネットワーク以外のネタにデータクリーニングや画像解析などもありますので広い範囲で活用することができます。
▼本のサンプルコードを入力して作ったもの(口コミ伝搬の様子)
②オライリージャパン『IPythonデータサイエンスクックブック 第2版 ―対話型コンピューティングと可視化のためのレシピ集』
私としては、オライリーと聞いただけで中級者以上という印象を受けます。既に他の同シリーズを読んだことがある方は同じパターンだと思っていただければと。教科書的というか辞書のようなこのシリーズですが、ほかのものと比べると「レシピ集」というだけあって、あまりまとまっていない印象があります。他のやつだと白黒ページで徹底的にやるイメージがありますので。
取り扱っている題材は飛行ルートの可視化です。(前半にも別の題材が登場しますが、こちらはJAVAを使用した可視化との組み合わせになります。)一応ネットワークの基礎的な説明もついています。
なぜ難しいのに本書を手に入れたかというと、この図化(飛行ルート)では最終的に地図上にネットワーク図を重ね合わせるというものです。そのため、NetworkXtとcartopy(地図を取り扱うライブラリ)の混在したコードを学習することができる点があげられます。コードは非常に難しかったです・・・。
こちらもデータサイエンスの本ですので、ネットワーク以外にも様々なネタを取り扱っています。総合的にレベル、ボリューム高めですが、お値段も高めです。
▼ 本のサンプルコードを入力して作ったもの(飛行ルート)
③オーム社『Pythonで学ぶネットワーク分析 ColaboratoryとNetworkXを使った実践入門』
こちらはネットワークに関する専門書です。大学生、大学院生向けとのことで教科書といったところでしょうか。なので全ページ白黒です。こちらも初心者向けではありませんと謳っています。
書名に「NetworkX」が含まれているとおり、NetworkXのコードをとことん学ぶことができます。また、ネットワークの理論もわかりやすくまとめてあります。にわかにネットワークに触れた、とくにGephiとか適当に触っていた私にとっては、「この本を読んでからやればよかった」と思う点が多々ありました。
NetworkXの使い方はもちろん、Gephiを利用していて、用語がよくわからないと思われた方、是非こちらをおすすめします。なお、使用環境はGoogle Colaboratoryですが、こちらはそれほど気にしなくても良いかと思います。使用画面の画像はなく、コードは印刷されているものだけですので。(私はJupyterで動かしています。)
▼本のサンプルコードを入力して作ったもの(レ・ミゼラブルの登場人物ネットワーク)
まとめ
今回はNetworkXを取り扱っている本を紹介しました。参考になればと思います。