【python超入門】pythonで統計学超入門4(グラフを作成する)【統計学超入門】

python×統計学超入門の4回目です。

今回は、pythonでグラフを扱うライブラリを使用し、統計学に必須な道具を用意しましょう。

matplotlibをインストール

matplotlibをインストールします。以下コマンドをコマンドプロンプトで実行します

pip install matplotlib

pyplotを試す

インストール出来たら以下プログラムを試してみましょう

import matplotlib.pyplot as plt

data = [2,4,6,8,10]

plt.plot(data)
plt.show()

右肩上がりのグラフが表示されれば成功です。

graph1

numpyでサンプルデータを作成する

matplotlibをインストールしたときに、関連ライブラリとして「numpy」もインストールされているはずです。

numpyは行列等の計算に優れたライブラリで、これがあるからpythonを使ってるという人がいるくらいです。

ランダムで0から100までの整数を30個生成するには

import numpy as np

data = np.random.randint(0, 100, 30) #0から100までの整数値を30個生成

print(data)

このようにし、このデータを30名のクラスの英語の成績とみなします

サンプルデータをグラフ化する

上記コードを組み合わせて以下のようにし、実行します

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randint(0, 100, 30) #0から100までの整数値を30個生成

print(data)
plt.plot(data)
plt.show()
graph2

データをランダム生成しているので、結果は毎回異なると思いますが、このグラフだけだとなんのこっちゃわからないですね。

一応、ランダム生成したデータを出席番号順の英語の成績だとするならば、Y軸は英語の得点、X軸は出席番号となります。

しかし、グラフとしては意味を持たないので、統計でよく使用される「ヒストグラム」というグラフで表しましょう。

ヒストグラムは、点数をグループごとにカウントする手法で、プログラムは1か所変えるだけです

import matplotlib.pyplot as plt
import numpy as np

data = np.random.randint(0, 100, 30) #0から100までの整数値を30個生成

print(data)
plt.hist(data) #ここを変える
plt.show()
graph3

X軸に得点、Y軸に人数となりました。

この表だと、統計的に意味を持たせやすいですね。自分のだと0点~10点が5人もいて、授業についていけない生徒が多いのでは?という良くない印象を持たれてしまう結果です。

さて、今回は以上です。

次回は1回目から今回の成果を集結して統計を取ってみましょう

コメント

タイトルとURLをコピーしました