コラブ Colab で学ぶ高校数学

はじめに

Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More!
Amit Saha

を Colab でなぞりながら読む。

というのをやっていて、とりあえず最後まで行ったのでご紹介。

元の本の章立ては次のようになっています。

  1. 数を扱う
  2. データをグラフ化する
  3. データを統計的に表現する
  4. Sympy を使った代数と数式処理
  5. 集合と確率で遊ぶ
  6. 幾何図形とフラクタルの描画
  7. 微積分を解く

この内、1章から5章までのノートが

https://colab.research.google.com/github/kalz2q/mycolabnotebooks/blob/master/doingmath01.ipynb

残りのノートが

https://colab.research.google.com/github/kalz2q/mycolabnotebooks/blob/master/doingmath02.ipynb

です。

元の本のプログラムは多くの場合、main を持ったプログラムの形にしてあるのに対し、この Colab では コードセルで走るように書き直してます。

数式は LaTeX で転記しています。

グラフや図形は matplotlib で転記しました。

Colab について

Colab は Google が無料で用意してくれている機械学習環境ですが、Jupyter なので、普通の数学環境でもあります。

自分のマシンに Anaconda などで Jupyter 環境を作る手間をかけることなく、ログインするだけで Jupyter が使える。

ほかの人が作った ノートブックを Colab から開くと自動的にコピーができて、インタラクティブなノートブックが自分のものになって、自分の GitHub に保存することもできる。

Jupyter ノートブックをオンラインで読む方法はいままでも nbviewer をつかったサイトがありましたが、開けて読めるだけでインタラクティブではありませんでした。

ある意味、夢のような環境が Colab だと思います。 無限に勉強できてしまう!!!!

Colab で学ぶシリーズ

今回は本を読みながら数式とプログラムの実験をする、というノートブックでしたが、これで Python, Numpy, Sympy, matplotlib, LaTeX がだいたいわかったので、同じ手法でいろんな本のノートをとってみようかと思っています。

イデア

  • Colab で学ぶチャート式数学の例題集
  • Colab で学ぶ幾何
  • Colab で学ぶHaskell
  • Colab で学ぶ物理
  • Colab で学ぶプログラミングの古典 Structure and Interpretation of Computer Programs とか
  • Colab で学ぶ数学の古典

とか