読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

統計学入門として、まずはJavaScriptを使って標準偏差を求めてみる。

<スポンサーリンク>

統計学の基本を勉強する。

1.基礎

●記述統計と推測統計
記述統計とは、得られたデータからその特徴を抜き出すためのテクニックのこと。

推測統計とは、全体を把握しきれないほど大きな対象や、まだ起きておらず未来に起きることに関する推測を行うもの。
これは20世紀になってから確立された方法論で、「部分から全体を推測する」という意味。身近な例では、選挙速報などが典型的な推測統計の成果といえる。

標準偏差の意味
標準偏差は、データ達の平均値からの離れ方を平均化したもの。

平均値というのは、データの分布から代表的な数として取り出されたもので、

平均値= (データの合計) ÷ (データの数)

で求めることができる。

偏差というのは、各データが平均値からどのくらい大きいか、あるいは小さいかを表したもの。
どんなデータに関しても、その偏差を作って、その偏差たちを算術平均するとゼロになる。

偏差 = (データの数値) - (平均値)

で求めることができる。

で、次に分散。
分散とは、偏差を二乗して平均をとったもので、

分散 = |(偏差の二乗)の合計| ÷ データ数

で求めることができる。

そして、おまちかねの標準偏差は、分散の平方根をとったものである。
\sqrt{Variance}

2.サンプルスクリプト

JavaScript標準偏差を求めるためのコードサンプルはこちら。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>標準偏差</title>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
	var array = [32,27,29,34,33];

	$("#go").on('click', function() {
		$("#result").append("以下の値の標準偏差を求めます<br/>");
		for(var i=0; i<array.length;i++) {
			$("#result").append(array[i] + ',');
		}
		$("#result").append('<br/><hr/>');
		var result = getStandardDeviation(array);
		$("#result").append('結果:' + result);
	});
	
	/**
	 平均を求める
	 データの合計 ÷ データの個数
	*/
	function getAverage(data) {
		var sum = 0;
		var average = -1;
		for(var i=0; i<data.length;i++) {
			sum += data[i];
		}
		average = sum / data.length;
		return average;
	}

	/**
	 分散を求める
	 平均平均との差を2乗して足したものをデータの個数で割る
	*/
	function getVariance(data) {
		var average = getAverage(data);
		var variance = -1;
		var sum = 0;
		for(var i=0; i<data.length;i++) {
			//Math.pow(n, m)はnのm乗
			sum += Math.pow((data[i] - average),2);
		}
		variance = sum / data.length;
		return variance;
	}

	/**
	 標準偏差を求める
	 分散のルートを取る
	*/
	function getStandardDeviation(data) {
		var variance = getVariance(data);
		var statdardDeviation = Math.sqrt(variance);
		return statdardDeviation;
	}
})
</script>
</head>
<body>
<h2>標準偏差</h2>
<button id="go">標準偏差を求める</button>
<div id="result">
</div>
</body>
</html>

3.デモ

f:id:sho322:20140120010352j:plain
ボタンを押すと、配列に突っ込んだ値の標準偏差を取得することができた。
やっぱりコードに書くと、紙に書くより公式を覚えられる気がする。

4.参考

完全独習 統計学入門

完全独習 統計学入門

おそらく「マンガで学ぶ~」の次くらいにやさしい統計学の本。
まずはこの本から勉強していく。