IPython データサイエンスクックブックを読んだ。 ~研究でPython使ってる人にオススメです~

IPython データサイエンスクックブックを読んだ。 ~研究でPython使ってる人にオススメ~

3章まで一通り読んだ。

プログラマーよりも研究者が対象だったので凄くタメになることが多く、需要と要求ががっちりハマった本は久しぶりでした。

Recipe 2.5-2.6が研究でコードを書く際に良いこと書いてるので、暗記するくらいに読み込みたい。

2016/02/02 追記 以下にRecipe2.5の簡単なまとめを書き残しておく。

Recipe 2.5 再現性を高める10の秘訣

  • ディレクトリ構造、命名規則に一貫性を!
    • gistを参照
  • MarkDownやreSTを使ってマニュアル化しよう
  • 重要な部分はコメントや docstringを使おう(Recipe2.6 高品質なPythonコードを参照)
  • 全てのテキストファイルはGitで管理しよう(生成ファイルやバイナリファイルは除く)
  • IPython Notebook から作り始めて完成したら単一のPythonファイルへ
  • ソフトウェアスタックを明記する(どのpackageを使っているか、依存関係を明記)
  • 実行時間の長い計算はpickelなどで途中結果を保存しておこう
  • 巨大なデータセットに対してコードを構築する際には、まずは一部のデータを使い結果を検証しよう
  • 並列化が可能なら検討しよう(IPython.parallel, etc..)
  • Python関数やスクリプトを使って積極的に自動化を目指そう。(UNIXユーザーならUNIXコマンドの勉強を薦める)

研究向けにコード技法とあまり知見がないので嬉しい書籍です。

研究関連でのプログラミング、コーディング、データ管理に対する情報は下記の記事が分かりやすい。

メモは IPythonNotebookでとりました。 Gistでレンダリングされるの便利ですね。

良かった点

  • 「データサイエンスクックブック」という題名の通り、単なるプログラミングではなく科学よりの知見が書かれた本
  • 研究でPythonを使いたい人いう人向けにこの本はオススメ
  • 8章「機械学習」と14章「グラフ、幾何学、地理情報システム」が面白そう
  • 各種サンプルコードがGithubや nbviewerで公開されていてOSSの息吹を感じ取れるのが良い
  • Packageは既知の物が多かったけど、Recipe 2.5-2.6 は良い事書いてるなと感動
  • packageは便利だけど、標準モジュールを如何に使いこなすかってのも大事

最後に

過言かもしれないけど、、これからは、Git,Juptyter Notebookは研究におけるデファクトスタンダードなるなと強く感じた。 便利な世の中になってきて嬉しいかぎり。

Recent Posts

Loading...