書籍:Python実践データ分析100本ノック

個人開発したアプリの宣伝
目的地が設定できる手帳のような使い心地のTODOアプリを公開しています。
Todo with Location

Todo with Location

  • Yoshiko Ichikawa
  • Productivity
  • Free

スポンサードリンク

scikit-learnを触ってて、もうちょっとpandasでの前処理やmatplotlibを勉強したいなと思って購入。


章節単位で実際にコードを書いていき、サンプルデータを使用してチュートリアル形式でpandasの扱い方とデータの解釈に対しての考え方を学ぶことが出来ます。

また、pandasでの基本操作(join, union, 欠損値, 文字列の処理, カテゴリデータの処理, など)だけではなく書籍名でもあるように以下のような"実践"的なシミュレーションを進めていきます。

  • 顧客の利用動向を掴んで退会予測
  • ネットワークグラフのプロット、経路最適化問題
  • ネットワークグラフの伝播シミュレーション
  • OpenCVでの画像解析
  • MeCabでのテキスト解析と類似テキストの判別

など。

また、そこまで長いコードを書く必要もなく、書いてすぐに試せる(一部を除く)ので、理解を深める為にパラメータの値を変更したりして色々と試すこともできました。

僕の場合、SQLは中級者程度には扱え、他プログラミング言語で配列なんかも扱い慣れてはいるので、pandasの扱い自体、戸惑うことなく入っていけました。

また、記述通りに写経しても動かない場合とかはjupyterのkernel再起動したりするとうまく動く場合がある。例えば、配列に対してappendするようなコードがある場合、コード内で配列を初期化していないと、配列のデータがどんどんメモリ上に積み上がってしまったりする。


良かった点

  • 段階を追いながら、意味のある理由でpandasの操作を学ぶことができた。ただのリファレンス本と違い楽しみながら学ぶことができる。
  • 一冊通すと、pandasの初心者は脱出出来たんじゃないかな(^_^)と思う。
  • 数量、カテゴリの表データだけではなく画像やテキストデータの解析なんかも扱う
  • グラフデータがすごく楽しかった。書籍では物流の輸送ルートとソーシャルでの口コミ伝播のシミュレーションを扱う。


イマイチな点

  • 書籍中で使用するサードパーティライブラリの導入やインストールについては、「自身で調べること」と記述があり、詳しい説明はなし。僕はDocker Anacondaで環境構築したのだが、OpenCV、Dlib、 MeCabのどれも導入するのに結構ハマってしまった。OpenCVのimshowメソッドについては結局、Anaconda jupyter上では動作させることができず、matplotlibで代用して読み込んだファイルの確認を行った。多分、エラーを解決できない人は9章以降で挫折するんじゃないのかな...?
  • 結構、似たような記述が繰り返し続いたりするので飽きがきたりする。
  • 8章、9章は"(計算量的に)重い処理"を学習用PCで実行するので、記述ミスなんかによるデバッグが大変。
  • 8章以降は説明コードは断片的な差分のみの記載になり、全文は解像度が低い画像を確認しないといけない。僕はKindle版を購入したんだけど、書籍版だともっと辛いんじゃないかな(^_^;) これ、前章までかなり丁寧に記述されていたので、後半から担当著者が変わったんじゃないかな?と思ったほど笑
  • matplotlibについては使用頻度はちょっと控え目。かな。個人的にはヒストグラムと2変数相関とかは沢山使いたい。


と、イマイチな点はありながらも、チュートリアル形式で、少量ずつプロットして楽しみながら学んでいけるので、満足度は高かったです。