カテゴリ: Ruby 更新日: 2025/12/17

Rubyで統計の基本を学ぼう!平均・中央値・標準偏差をやさしく計算する方法

統計の基本をRubyで:平均・中央値・標準偏差の計算方法
統計の基本をRubyで:平均・中央値・標準偏差の計算方法

先生と生徒の会話形式で理解しよう

生徒

「数字がたくさん並んでいるデータって、どうやって意味を読み取るんですか?」

先生

「数字の集まりは、そのままだと分かりにくいので、代表となる数値を計算します。」

生徒

「代表となる数値って、平均とかですか?」

先生

「そうですね。Rubyを使うと、平均や中央値、標準偏差も計算できます。」

1. 統計とは何かを超かんたんに説明

1. 統計とは何かを超かんたんに説明
1. 統計とは何かを超かんたんに説明

統計とは、たくさんの数字を整理して、全体の特徴を分かりやすくする考え方です。 たとえば、テストの点数が何人分もあるとき、一人ずつ見ても全体の傾向は分かりません。 そんなときに「平均点はいくつか」「真ん中の点数はどこか」を計算すると、全体の様子が見えてきます。

Rubyの数値(整数や小数)と演算子(足し算、割り算、比較など)を使えば、 プログラミング未経験の人でも統計の基本を体験できます。 ここでは平均・中央値・標準偏差の3つを、身近なたとえを交えながら説明します。

2. 平均とは?Rubyで平均を計算してみよう

2. 平均とは?Rubyで平均を計算してみよう
2. 平均とは?Rubyで平均を計算してみよう

平均とは、すべての数を足して、個数で割った数です。 お菓子をみんなで平等に分けるイメージをすると分かりやすいです。 たとえば、3人でりんごを合計9個持っていたら、一人あたり3個になります。 この「一人あたり」が平均です。


numbers = [70, 80, 90]
sum = numbers[0] + numbers[1] + numbers[2]
average = sum / 3.0
puts average

80.0

ここで使っている「3.0」は小数です。 Rubyでは、整数同士で割り算をすると整数になってしまうため、 小数を使うことで正確な平均が計算できます。 これが整数と小数の違いです。

3. 中央値とは?真ん中の値を見つける考え方

3. 中央値とは?真ん中の値を見つける考え方
3. 中央値とは?真ん中の値を見つける考え方

中央値とは、数字を小さい順に並べたときの真ん中の値です。 クラス全員の身長を低い順に並べて、ちょうど真ん中にいる人の身長を思い浮かべてください。 極端に高い人や低い人がいても、影響を受けにくいのが特徴です。


numbers = [70, 90, 80]
sorted = numbers.sort
median = sorted[1]
puts median

80

sortは、数字を小さい順に並べる命令です。 配列という「数字をまとめて入れる箱」を使うことで、 Rubyでは簡単に中央値を求められます。

4. 標準偏差とは?ばらつきを表す数字

4. 標準偏差とは?ばらつきを表す数字
4. 標準偏差とは?ばらつきを表す数字

標準偏差は、数字がどれくらい散らばっているかを表します。 たとえば、全員がほぼ同じ点数なら安心感がありますが、 点数が高い人と低い人で大きく分かれていると不安になります。 この「ばらつき具合」を数値にしたものが標準偏差です。

計算は少し長くなりますが、Rubyの演算子を順番に使うだけです。


numbers = [70, 80, 90]
average = (70 + 80 + 90) / 3.0

diff1 = (70 - average) ** 2
diff2 = (80 - average) ** 2
diff3 = (90 - average) ** 2

variance = (diff1 + diff2 + diff3) / 3.0
standard_deviation = Math.sqrt(variance)

puts standard_deviation

8.164414002968976

「平均との差を二乗する」「全部足して割る」「平方根を取る」という順番で計算しています。 **は二乗、Math.sqrtは平方根という意味です。 名前は難しく見えますが、やっていることは足し算と掛け算の組み合わせです。

5. Rubyで統計を学ぶメリット

5. Rubyで統計を学ぶメリット
5. Rubyで統計を学ぶメリット

Rubyで統計を学ぶと、数字と演算子の使い方に自然と慣れていきます。 比較演算子や論理演算を学ぶ前の準備としても最適です。 また、実際に手を動かして計算することで、 数学が苦手な人でも「数字は怖くない」と感じられるようになります。

パソコン操作に不慣れな人でも、 数字を書いて実行するだけで結果が表示されるのは大きな安心材料です。 Rubyのやさしさを感じながら、統計の基本に触れてみてください。

カテゴリの一覧へ
新着記事
New1
Ruby
“すべてはオブジェクト”を体感!初心者向けRubyのオブジェクト指向入門【irbで学ぶ】
New2
Ruby
Rubyの標準入出力を完全ガイド!puts・print・pの違いとデバッグ活用法
New3
Ruby
Gemとは?RubyGemsとBundlerを初心者向けに完全解説!依存関係管理も図解でわかりやすく理解
New4
Ruby
Rubyの文字エンコーディング入門!UTF-8・マジックコメント・外部/内部エンコーディングを完全解説
人気記事
No.1
Java&Spring記事人気No1
Ruby
Rubyのreduceとinject入門!合計計算や集計を初心者向けに分かりやすく解説
No.2
Java&Spring記事人気No2
Ruby
Rubyの文字列エンコーディング完全ガイド!Encoding・force_encoding・encodeを初心者向け解説
No.3
Java&Spring記事人気No3
Ruby
Rubyの始め方ガイド:インストールから最初のHello Worldまで(Windows/Mac/Linux)
No.4
Java&Spring記事人気No4
データベース
PostgreSQLのWHERE句を徹底解説!初心者でもわかるSQLデータ抽出の基本
No.5
Java&Spring記事人気No5
Ruby
Rubyのfind/detect/find_indexを徹底解説!目的のデータを素早く探す方法
No.6
Java&Spring記事人気No6
Ruby
Rubyで比較演算子を完全解説!==・===・<=>・eql? の使い分け
No.7
Java&Spring記事人気No7
Ruby
Rubyのselect/reject/filterの使い方を完全解説!初心者向けの条件抽出レシピ
No.8
Java&Spring記事人気No8
データベース
PostgreSQLで順位付け!ROW_NUMBER関数の使い方を初心者向けに徹底解説