Pythonやら統計学やらを勉強しようと本を探していた時にヒットした本。著者を見てみると「谷合廣紀」の文字。ん?(当時)奨励会三段リーグをトップで走っていた(その後、四段に昇段←おめでとうございます!)と同じ名前では?と調べたら、本人でした。まじか、東大大学院で研究していて、プログラムの本を出版して、さらにプロ棋士になろうなんて人間がいるのか…。しかも、後日知ったのですが、大学院の研究室の指導者は、なんと短歌で有名な坂井修一だとか。ほんとうにわけが分からない濃密な世界。ちなみにあとがきには、著者がプログラムを学ぶきっかけになったのは、行方尚士八段にプログラマ辻慎吾氏を紹介してもらったからだとか。
統計検定2級の教科書を読み終えたあたりで、この本をKindleで買い、読み始めました。自宅のWindowsPCにAnacondaをインストールし、Python環境を作って、本書のコードを手入力しながらPythonと統計の両方を手に覚えさせます。本書の統計学の範囲は、ほぼほぼ統計2級教科書と同じ。おお、教科書でやった確率分布がMatplotlibで表示されるぜ! 確率分布がほんとうに実現できてるぜ! という感動を覚えるためのプログラムです。
一通り読んで
・本書ではPythonを覚えることが難しい
・本書では統計学を覚えることが難しい
という印象を受けました。
しかし、
・Pythonを一通り(特にnumpyやpandas)覚えた人が、使い方を定着させる
・統計学(2級レベル)を覚えた人が、手で覚えて知識を定着させる
という使い方に、非常に有効です。
本書ではnumpy、pandas、matplotlib、scipy.statsの関数の説明がほぼなく、このプログラムはいったい何をやっているんだ?というのを毎回Googleで検索して調べる必要がありました。過去に勉強したプログラミングの本は、本のなかでこういう疑問が解決できるように作られているものがほとんどなので、この点にはかなり苦しみました。どこかにリファレンスを置くなり、提供ソースのコメントに記載でもあれば助かるのですけど。
本書で使われていたAnacondaという開発環境を初めて使ったのですが、こちらも意外な環境でした。ブラウザ上で対話的にコードを入力し、対話的に順次実行していく環境です。大昔にMS-BASICを使ったことがある人なら「懐かしい!」と思うような環境ではないでしょうか。クリック一つで試行錯誤する使い方には、この環境なかなかよいですね。