フリーランスエンジニア向けIT系求人・仕事・案件情報サイト
更新日

Pythonでデータサイエンスをするための統計学入門

データサイエンスとは

データサイエンスとは、データ分析に関する学問のことです。分析結果は一般的に、企業が経営上の様々な判断をするために用いられます。

また、データサイエンスの専門家のことをデータサイエンティストと言います。データサイエンティストはプログラミングや統計学などの専門的な知識・スキルを持っています。

データサイエンティストはこれらの能力を駆使することで、データを少し眺めただけでは絶対にわからないような経営上の結論を導き出すことが可能です。自社に眠っているデータを経営判断に役立てるために、最近では多くの企業がデータサイエンスに注目しています。

データサイエンティストが習得すべきはPython

データサイエンティストにはプログラミングのスキルが必要になりますが、中でもオススメのプログラミング言語は何と言ってもPythonです。

なぜなら、Pythonはデータサイエンスに使えるライブラリが豊富であり、データ分析のためのプログラムを簡単に書くことができるからです。

また、Pythonはコードの書き方がシンプルといった特徴もあるため、プログラミング初心者の方が一番最初に学習される言語としてもオススメです。ちなみに、データサイエンスにはRといったプログラミング言語も用いられます。

こちらもPythonと同じようにパッケージ(Rの場合はライブラリと呼ばずにパッケージと呼びます)が充実しているのですが、日本語で書かれた勉強資料が少ないという欠点があります。よって学習コストが若干高いため、プログラミング初学者の方はPythonを選択した方が無難でしょう。

統計学の基礎知識

データサイエンティストには統計学のスキルも必須です。ここでは簡単に統計学の基礎知識についてご紹介します。

1. 平均

平均についてはあえて説明する必要はないでしょうが、他の統計量や正規分布を説明する上で非常に重要ですので、念のため紹介しておきます。平均は以下の式で表されます。

(データの合計)÷(データの個数)

例えば、[10,20,30,40,50]という5つのデータがあったとしたら、平均は次のように求められます。

平均

=(10+20+30+40+50)÷5
=30

2. 偏差

偏差は「個々のデータが平均値からどれだけズレているか」を表します。偏差は以下の式で表されます。

(個々のデータ)―(平均値)

例えば先ほどのデータを用いると、10-30や50-30などが偏差になります。ただ、偏差には1つ問題点があります。それは、すべてのデータにおける偏差を足し合わせると、プラスの値とマイナスの値が打ち消し合ってしまうという点です。実際に先ほどのデータにおいて、偏差の総和を求めてみましょう。

偏差の総和

=(10-30)+ (20-30)+ (30-30)+ (40-30)+ (50-30)
=(-20)+(-10)+0+10+20
=0

このように単純に足し合わせると各偏差が打ち消されてしまうため、偏差の総和ではデータの散らばり具合を表せません。

3. 分散

上記の偏差の問題を解決するための統計量が分散です。分散は「データの散らばり具合」を表す統計量です。分散は以下の式で表されます。

(偏差の2乗の総和)÷(データの個数)

少しわかりにくいかと思いますので、こちらも具体例で説明していきます。先ほどのデータを用いて分散を計算すると、以下のようになります。

分散

={(10-30)^2+ (20-30)^2+ (30-30)^2+ (40-30)^2+ (50-30)^2}÷5
=(400+100+0+100+400)÷5
=200

ただ、分散は偏差を2乗してしまっているため、元のデータと単位が一致しません。元のデータの単位がmである場合、分散の単位はm^2となってしまうわけですね。そのため、分散が大きいほどデータが散らばっていることはわかるのですが、どれだけ散らばっているのかが直感的にわからないという欠点があります。

4. 標準偏差

先ほどの分散の欠点をなくしたのが標準偏差です。標準偏差もデータの散らばり具合を表す統計量です。標準偏差は以下の式で表されます。

√分散

先ほどの分散の値を代入すると標準偏差は次のようになります。

√200
=10√2
≒14.1

分散のルートを取ることによって、元のデータと同じ単位になります。つまり、元のデータ[10,20,30,40,50]の単位がmだとすれば標準偏差の単位もmです。標準偏差を見てデータがどれくらい散らばっているのかを理解するためには、正規分布について知る必要がありますので、次はそちらについて解説していきます。

5. 正規分布

正規分布とは、私たちの世界で最も頻繁に見られるデータの分布です。正規分布のグラフは以下のような釣鐘型が特徴です。平均値の近傍に多くのデータが存在し、平均値から遠ざかるほどデータの数が少なくなっていきます。正規分布の面積は、そのデータが存在する確率を表しています。

正規分布は平均と標準偏差の2つの統計量によって形が決定します。そして、平均から標準偏差1つ分の範囲に全体の約70%、平均から標準偏差2つ分の範囲に全体の約95%のデータが存在します。

先ほどの例では平均30、標準偏差14.1でしたので、30±(2×14.1)つまり1.8〜58.2の範囲内に95%のデータが存在しそうだと言えるわけです。また、ちなみにですが平均0、標準偏差1の正規分布のことを標準正規分布と言います。

このような性質を用いて確率的に物事を判断していくのが統計学の醍醐味です。統計学の面白さを感じて頂けたかと思います。

Pythonや統計学を学ぶためのオススメ書籍

ここまでの内容をご覧になって、Pythonや統計学についてもっと学びたいと思った方もいらっしゃるでしょう。そんな方のために、Pythonや統計学を勉強するためのオススメ書籍をご紹介します。

1.『やさしいPython』

こちらは昔から評判のある「やさしいシリーズ」の1冊です。プログラミング未経験の方でも基礎から丁寧にPythonを学ぶことができます。説明やわかりやすく、スッキリとしたビジュアルなので読み進めやすいのがこの書籍の特徴です。

2.『マンガでわかる統計学』

タイトルのとおり、統計学についてマンガで簡単に説明されています。こちらは統計学を初めて学ぶ方にオススメです。先ほど説明した分散と標準偏差、正規分布などに関して非常にわかりやすく書かれています。統計学基礎の概要を素早くざっくりと掴みたい方にオススメです。

3.『統計学入門』

こちらも統計学を初めて学ぶ方にオススメです。こちらの書籍の特徴は、難しい数学の知識が一切不要であることです。中学数学が理解できれば読み進められるように易しく書かれています。分散と標準偏差や、正規分布、仮説検定に関して詳しく説明されています。統計学の基礎をしっかりと身に付けられる良書です。

4.『Pythonで学ぶあたらしい統計学の教科書』

中級者向けの書籍です。Pythonや統計学の基礎を一通り学んでから読むのが良いでしょう。内容としては、PythonでMatplotlib, Pandas, Seaborn, Scipyなどのライブラリを使って、実際にデータ分析をするための手法が書かれています。こちらの書籍の内容を理解すれば、Pythonで本格的なデータ分析が可能になります。

学習のためのおすすめオンラインサービス

YouTube

意外に思うかもしれませんが、YouTubeでも統計学に関する知識を学ぶことができます。「YouTubeは無料だからクオリティが低いんじゃないの?」と思う方もいらっしゃるかもしれませんが、そんなことはありません。

オススメするのは、たくみ先生の『予備校のノリで学ぶ大学の数学・物理』というチャンネルです。通称『ヨビノリ』と呼ばれています。このチャンネルで統計学の基礎について解説している動画がいくつかあるので、そちらを是非ご覧下さい。

このチャンネルで解説をしておられるたくみ先生という方は、横浜国立大学卒業後、東京大学大学院を修了されたエリートYouTuberです。説明が非常にわかりやすく定評があります。

Udemy

Udemyは世界最大のオンライン学習サービスです。ビジネススキルに関する様々な講座を動画で見ることができ、この中にプログラミングや統計学の動画も多くあります。

動画は各分野のプロの方が解説してくれるので、非常に高いクオリティの講座となっています。自分の好きな学習用動画を単品で購入することができ、購入した後はいつでも自由に見ることができます。もし不明点があれば、動画内で解説をしてくださっている講師の方にメールで質問することもできます。

データサイエンティストの将来性

さて、これまで統計学の基礎知識や、その学習の仕方についてご紹介しました。ここで、「データサイエンスってこれからも本当に需要あるの?」と気になった方もいらっしゃると思いますので、データサイエンスの将来性についてご説明しておきます。

まず結論から言うと、データサイエンスはこれからも伸びる分野です。なぜなら、インターネットの発達によって大企業だけでなく中小企業や零細企業も多くのデータを集められるようになり、それを積極的に活用しようという企業の傾向があるからです。

また、データ分析だけでなく、集めたデータを用いてAIを利用するといった企業もこれから増えてくることでしょう。そのため、データサイエンスに携わる人材はこれからも多くの企業で求められることでしょう。

まとめ

データサイエンスに詳しくなれば、経営上の重要な意思決定に貢献できますし時給アップも目指せます。そして何よりも、プログラミングや統計学はやっていて面白いです。難しい分野ではありますが、少しでも挑戦してみたいと思った方は是非これからコツコツと勉強していきましょう。

\ ログインしなくても検討機能が使える♪ /
Pythonの案件を見てみる