プログラミング言語Pythonが必要な理由|【Python・R・エクセル統計学・統計解析】
プログラミング言語Pythonが必要な理由
コンピュータで統計解析をするとき、いろいろな方法や環境があります。
たとえば、表計算ではエクセル、統計を専門にした解析用のソフトウェア環境であれば、RやSPSSなど、いろいろな方法や環境がありますが、なぜPythonを使うのでしょう。
エクセルを使った解析
表形式のデータは見たまま扱えるという利点があります。縦・横の総和や平均、分散などの計算は、ちょっとした入力で実行できます。
また、定型的な処理は、誰かが作ってくれた「マクロ」があればそれを起動するだけで計算できます。
企業などで定型処理を繰り返す場合には、この方法がよく使われます。
マクロを組み込んだシートの形で提供されることもあります。
ところが、問題が2つあります。1つ目の問題は、簡単な操作であっても多数のデータについて行うと大変になるということです。
たとえば1カ月のデータを簡単に処理できるマクロがあったとしても、1年分のデータを処理するには操作を12回繰り返す必要があります。
過去10年分では120回になります。
もう1つの問題は、定型でない処理をしたいときどうするかです。
簡単な処理はステップを追って操作をして計算できますが、複雑な計算になると難しくなります。
つまり、多数データの繰り返し処理をしたい、あるいは非定型の複雑な処理をしたいという場合は、手間が増えて大変時間がかかります。
RやSPSSなどの統計向けパッケージを使った解析
統計処理専用の様々なパッケージ環境が提供されています。
特にRは無料な上、多様なライブラリが専門家のユーザによって作られていて、重宝します。
エクセルほど、見たまますぐに使えるというわけではありませんが、解析したいデータがCSVで与えられていて、かつ希望する処理がライブラリの中にあらかじめ用意されていれば、非常に簡単に処理できます。
また、グラフを描く機能が充実していて簡単に結果を可視化できます。
さらに、初心者にとって良い点として、全体が1つにパッケージされていて簡単にインストールすることができることが挙げられます。
また、プログラミング環境が用意されているので、スキルがあれば自前でプログラムを作ることができます。
問題があるとすれば、Rは統計処理を対象とした処理システムで、他の用途のプログラミングには、可能ですがあまり向いていないということです。
他の処理は既に他の言語で書かれている場合も多く、それをわざわざRの処理とを連携させることも可能ですが、それなりの理解が必要です。
つまり、他のデータ処理のプログラムと結合して使うことは、現時点ではあまり簡単ではないように思います。
Pythonを使った解析
Pythonは、エクセルに比べると入り口のハードルはやや高いですし、Rに比べると統計に特化しているわけではありません。
しかし、他方で汎用のプログラミング言語・プログラミング環境として評価が高く、また統計も統計以外も含めて非常に多様な応用分野でのパッケージが作られており、統計処理と他の処理の連携という観点から非常に優れた環境です。
関連記事