「文武両道」は現実的か?

去年塾でアルバイトをしている時に、生徒から

「勉強できる人は運動もできるの??」

ってことをよく質問されました。

 

私は勉強も運動も努力がほとんどだと思うので、勉強で努力できる人は運動でも努力でき、学力と体力は相関関係が必ずあると思います。

ただし、この仮説はあくまでも経験的なものであり、経験バイアスによって過信してしまっているだけなのかもしれません。

具体的に調査された結果を知っているわけでもないので、私はこの仮説に関して検定するプログラムを作ってみることにしました。

 

とりあえず大学のゼミでNumpyとMatplotlibについて勉強しているので、Pythonを使って

データを解析していきます。

 

学力と体力のデータに関しては、国立教育政策研究所のホームページに25年度の学力調査の結果がExcel形式で配布されていたので、これを使うことにしました。

平成25年度 全国学力・学習状況調査 報告書 調査結果資料:国立教育政策研究所 National Institute for Educational Policy Research

今回はとりあえず、学力データに関する解析だけ簡単にやってみます。

 

ホームページの「実施概要」欄にある、「中学生」のリンクをクリックしてExcelファイルをダウンロードして下さい。

 

実際にExcelのデータを見てみると、右端の列に県ごとのテストの平均があるので、

これらから各都道府県の学力数値をpythonの配列に入れてHistgramに表示するところまでプログラムを作りました。

 

実際に作成したプログラムはこちら

ちなみに、Excelのデータはlearning_assessment.xlsで保存しています。

 

import xlrd
import numpy as np
import matplotlib.pyplot as plt
 
book = xlrd.open_workbook("learning_assessment.xls")
sh = book.sheet_by_index(0)
 
results = np.zeros*1
row = 0
for i in (14, 18, 22, 26):
col = 0
for j in xrange(14, 61):
results[row][col] = sh.cell_value(rowx=j, colx=i)
col = col + 1
row = row + 1
 
average_each_prefecture = results.mean(0)
plt.hist(average_each_prefecture, 40)
plt.show()

 

そして、ヒストグラムが以下のようになりました。

 

f:id:u651601f:20131023040458p:plain

横が学力平均、上が範囲に属する都道府県の数です。

うーん、正規分布に沿っているのかどうかがイマイチ分からない。。。

 

ということで、これからやるべきことは以下の3つ

  1. 体力に関するデータをpythonで処理できるように準備する
  2. データが正規分布に沿っているかをShapiro-Wilk検定で確認
  3. 学力データと体力データの相関性をt検定によって調査する

以上

*1:4,47