確率分布表のとおりに、とりうる値 x とその確率 p を1行ずつ入力してください。うすく表示している例は「くじ1回で当たる賞金」(0円が70%・100円が20%・500円が9%・10000円が1%)です。
このページでできること
- 確率分布表(とりうる値 \(x\) とその確率 \(p\) のペア。2〜10行)を入れるだけで、期待値 \(E(X)\)・分散 \(V(X)\)・標準偏差 \(\sigma(X)\) をその場で計算できます
- 答えは \(\dfrac{7}{2}\) のような約分済みの分数(厳密値)と小数の両方で表示。\(E(X) = x_1 p_1 + x_2 p_2 + \cdots\) に数値を入れた途中式も見られます
- 確率の合計がちょうど1になっているかを自動でチェック。1になっていないときは、今の合計がいくつかをお知らせします
- 確率は 0.2・20%・1/5 のどの形でも入力OK。値にはマイナスの数(損失)も使えます
- 計算結果には確率分布の棒グラフを表示。期待値 \(E(X)\) の位置が縦の破線で見えます
この計算は何の役に立つ?
「賞金 × 当たる確率」を全部足した期待値は、くじ1回あたりの平均的な見返りそのものです。日本の宝くじは、当せん金の総額が発売総額の5割を超えないよう法律(当せん金付証票法)で決められているため、期待値で見ると1枚の値段の半分以下になります。
スマホゲームのガチャも同じ計算ができ、提供割合(確率)の表示から「目当てのものが出るまでにかかる金額の目安」を考えるときの土台になります。
生命保険や自動車保険の保険料は、「支払う保険金 × その事故や病気が起こる確率」の合計=支払い額の期待値を土台に、運営の経費などを上乗せして決められています。この計算を専門に行う保険数理の専門家(アクチュアリー)という職業もあります。
加入者側から見ると、保険は期待値の上では払う額の方が大きい取引ですが、めったに起こらない大きな損失に備えるという安心を買う仕組みです。
資産運用の世界では、リターン(収益率)の期待値を「見込めるもうけ」、標準偏差を「リスク(振れ幅)」として数値で扱う考え方が広く使われています。期待値が同じ2つの商品なら、標準偏差が小さい方が値動きの穏やかな商品です。
「期待値の高さ」と「散らばりの大きさ」を別々の数字で見るというこのページの考え方は、そのまま金融の実務につながっています。
ボードゲームやビデオゲームの設計では、「サイコロ2個の出目の合計」「攻撃1回あたりのダメージ」「宝箱から出るアイテムの価値」などの期待値を計算して、強さや報酬のつり合いを取ります。
例えば「50%の確率で 100 のダメージ」と「必ず 50 のダメージ」は期待値が同じ50ですが、分散が違うため手触りの異なる技になります。狙った遊び心地にするために、期待値と散らばりの両方が調整されています。
式とグラフ
用語・記号の解説
記号
| \(X\) | エックス | 確率変数。サイコロの出る目のように「試行の結果によって値が決まる変数」を表します。中身が決まっていない「結果の入れ物」なので、普通の変数と区別して大文字で書く慣例です。 |
| \(x_1,\ x_2,\ \dots,\ x_n\) | エックスいち、エックスに、…、エックスエヌ | 確率変数 \(X\) がとりうる値の一つ一つ。右下の小さい数字(添え字)は「何番目の値か」を表す番号で、値そのものとは関係ありません。 |
| \(p_1,\ p_2,\ \dots,\ p_n\) | ピーいち、ピーに、…、ピーエヌ | それぞれの値が起こる確率。\(p\) は probability(確率)の頭文字です。全部足すと必ず1になります。 |
| \(n\) | エヌ | とりうる値の個数(確率分布表の行数)。個数を表す文字には number(数)の頭文字 \(n\) がよく使われます。 |
| \(E(X)\) | イーエックス | 確率変数 \(X\) の期待値。\(E\) は expectation・expected value(期待値)の頭文字です。「\(X\) の期待値」という1つの数を表す書き方で、\(E\) と \(X\) の掛け算ではありません。 |
| \(m\) | エム | 期待値(平均)を表すのによく使われる文字。mean(平均)の頭文字です。教科書では分散の定義式で \(m = E(X)\) と置いて式を短く書きます。 |
| \(V(X)\) | ブイエックス | 確率変数 \(X\) の分散。\(V\) は variance(分散)の頭文字です。期待値からのずれ(偏差)の2乗の平均で、散らばりの大きさを表します。 |
| \(\sigma(X)\) | シグマエックス | 確率変数 \(X\) の標準偏差。\(\sigma\) はギリシャ文字の小文字シグマで、standard deviation(標準偏差)の s にあたる文字です。分散の正の平方根です。 |
| \(X^2\) | エックスの2乗 | 確率変数 \(X\) の値を2乗した新しい確率変数。\(E(X^2)\) は「とりうる値をそれぞれ2乗してから、確率で重みを付けて平均したもの」です。 |
| \(\sqrt{\phantom{0}}\) | ルート(根号) | 2乗するとその数になる、0以上の数(正の平方根)を表す記号。例えば \(\sqrt{9} = 3\) です。標準偏差は分散にこの記号を付けて求めます。 |
用語
| 確率変数 | かくりつへんすう | サイコロの出る目、くじの賞金のように、試行(結果が偶然に決まる実験や観察)の結果によって値が決まる変数のこと。大文字の \(X\) で表すのが慣例です。 |
| 確率分布 | かくりつぶんぷ | 確率変数のとりうる値のそれぞれに、その値が起こる確率を対応させたもの。表の形にしたものが確率分布表で、このページの入力欄はその表をそのまま入れる形になっています。 |
| 試行 | しこう | サイコロを投げる、くじを引くのように、同じ条件で繰り返せて、結果が偶然に決まる実験や観察のこと。 |
| 期待値 | きたいち | 確率変数の平均。それぞれの値にその確率を掛けて全部足した値で、試行をたくさん繰り返したときの「1回あたりの平均」に近づきます。記号は \(E(X)\) または \(m\) です。 |
| 加重平均 | かじゅうへいきん | 単純に足して個数で割るのではなく、それぞれの値に「重み」を掛けてから足す平均。期待値は、確率を重みにした加重平均です。 |
| 分散 | ぶんさん | 散らばりの大きさを表す量。期待値からのずれ(偏差)を2乗して、確率で重みを付けて平均したものです。記号は \(V(X)\) です。 |
| 標準偏差 | ひょうじゅんへんさ | 分散の正の平方根。分散と違って元の値と同じ単位になるので、散らばりの大きさを直感的に比べやすい量です。記号は \(\sigma(X)\) です。 |
| 偏差 | へんさ | 値と期待値のずれ \(x - m\) のこと。プラスとマイナスが混ざっていて、そのまま平均すると必ず0になってしまうため、分散では2乗してから平均します。 |
| 大数の法則 | たいすうのほうそく | 試行の回数を増やしていくと、実際の結果の平均が期待値にどんどん近づいていくという法則。「期待値=たくさん繰り返したときの1回あたりの平均」という解釈のよりどころです。 |
| 離散型確率変数 | りさんがたかくりつへんすう | サイコロの目(1〜6)のように、とりうる値が飛び飛び(有限個や整数値)の確率変数。このページで扱うのはこの型です。身長のように連続した値をとるものは連続型確率変数と呼び、期待値は積分で計算します。 |
前提として理解しておくといいこと
このページの計算を「意味がわかって」使えるようになるために、前提として理解しておくといいことをまとめました。
つまずいたら、この表の内容に戻って復習するのが近道です。
| 確率の基礎(中学2年〜高校 数学A) |
|
| 分数・小数の計算(小学5年〜中学1年) |
|
| 平均(小学5年〜高校 数学I) |
|
| 2乗と平方根(中学3年) |
|
| データの分析(高校 数学I) |
|
Excelで計算する方法
| 値 x₁(はずれ 0円) | 0 |
| 確率 p₁ | 0.7 |
| 値 x₂(賞金 100円) | 100 |
| 確率 p₂ | 0.2 |
| 値 x₃(賞金 500円) | 500 |
| 確率 p₃ | 0.09 |
| 値 x₄(賞金 10000円) | 10000 |
| 確率 p₄ | 0.01 |
| 確率の合計(1になるか確認) | =B2+B4+B6+B8 |
| 期待値 E(X) | =B1*B2+B3*B4+B5*B6+B7*B8 |
| 値 x₁ | 0 |
| 確率 p₁ | 0.7 |
| 値 x₂ | 100 |
| 確率 p₂ | 0.2 |
| 値 x₃ | 500 |
| 確率 p₃ | 0.09 |
| 値 x₄ | 10000 |
| 確率 p₄ | 0.01 |
| 期待値 E(X) | =B1*B2+B3*B4+B5*B6+B7*B8 |
| 2乗の平均 E(X²) | =B1^2*B2+B3^2*B4+B5^2*B6+B7^2*B8 |
| 分散 V(X)=E(X²)−{E(X)}² | =B10-B9^2 |
| 分散 V(X) | 997275 |
| 標準偏差 σ(X)=√V(X) | =SQRT(B1) |
1つ目の表はくじの例(0円が70%・100円が20%・500円が9%・10000円が1%)で、確率の合計が 1、期待値が 165(円)になります。
2つ目の表は同じくじの分散で、2乗の平均 1024500 から期待値の2乗 27225 を引いた 997275 になります。
3つ目の表はその分散から標準偏差を求める表で、約 998.64(円)になります。行数を増やすときは、値と確率のペアの行を足して、式の「B1*B2+…」の部分にも同じ形で足してください。
Googleスプレッドシートで計算する方法
| 値 x₁(はずれ 0円) | 0 |
| 確率 p₁ | 0.7 |
| 値 x₂(賞金 100円) | 100 |
| 確率 p₂ | 0.2 |
| 値 x₃(賞金 500円) | 500 |
| 確率 p₃ | 0.09 |
| 値 x₄(賞金 10000円) | 10000 |
| 確率 p₄ | 0.01 |
| 確率の合計(1になるか確認) | =B2+B4+B6+B8 |
| 期待値 E(X) | =B1*B2+B3*B4+B5*B6+B7*B8 |
| 値 x₁ | 0 |
| 確率 p₁ | 0.7 |
| 値 x₂ | 100 |
| 確率 p₂ | 0.2 |
| 値 x₃ | 500 |
| 確率 p₃ | 0.09 |
| 値 x₄ | 10000 |
| 確率 p₄ | 0.01 |
| 期待値 E(X) | =B1*B2+B3*B4+B5*B6+B7*B8 |
| 2乗の平均 E(X²) | =B1^2*B2+B3^2*B4+B5^2*B6+B7^2*B8 |
| 分散 V(X)=E(X²)−{E(X)}² | =B10-B9^2 |
| 分散 V(X) | 997275 |
| 標準偏差 σ(X)=√V(X) | =SQRT(B1) |
Pythonで計算する方法
from fractions import Fraction
# 確率分布表(値と確率のペア)。くじの例:賞金と当たる確率
# 分数の確率は Fraction(1, 6) のように書ける
values = [Fraction(0), Fraction(100), Fraction(500), Fraction(10000)]
probabilities = [Fraction("0.7"), Fraction("0.2"), Fraction("0.09"), Fraction("0.01")]
# 確率の合計が1になっているかの検証
total = sum(probabilities)
if total != 1:
raise ValueError(f"確率の合計が1になっていません(合計: {total})")
# 期待値 E(X) = Σ x_i p_i
mean = sum(x * p for x, p in zip(values, probabilities))
# 2乗の平均 E(X²) と 分散 V(X) = E(X²) − {E(X)}²
mean_of_squares = sum(x * x * p for x, p in zip(values, probabilities))
variance = mean_of_squares - mean * mean
# 標準偏差 σ(X) = √V(X)
std_dev = float(variance) ** 0.5
print(f"期待値 E(X): {mean} = {float(mean)}")
print(f"分散 V(X): {variance} = {float(variance)}")
print(f"標準偏差 σ(X): {std_dev}")
数式記述言語(LaTeX等)での書き方(コピペ可)
E(X) = x₁p₁ + x₂p₂ + … + xₙpₙ
E(X) = x_1 p_1 + x_2 p_2 + \cdots + x_n p_n
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>E</mi><mo>(</mo><mi>X</mi><mo>)</mo>
<mo>=</mo>
<msub><mi>x</mi><mn>1</mn></msub><msub><mi>p</mi><mn>1</mn></msub>
<mo>+</mo>
<msub><mi>x</mi><mn>2</mn></msub><msub><mi>p</mi><mn>2</mn></msub>
<mo>+</mo><mo>⋯</mo><mo>+</mo>
<msub><mi>x</mi><mi>n</mi></msub><msub><mi>p</mi><mi>n</mi></msub>
</mrow>
</math>
E(X) = x_1 p_1 + x_2 p_2 + cdots + x_n p_n
Total[x*p]
EX := add(x[i]*p[i], i = 1..n);
EX = sum(x .* p);
E(X) = x_1 p_1 + x_2 p_2 + … + x_n p_n
V(X) = E(X²) − {E(X)}²
V(X) = E(X^{2}) - \{E(X)\}^{2}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>V</mi><mo>(</mo><mi>X</mi><mo>)</mo>
<mo>=</mo>
<mi>E</mi><mo>(</mo><msup><mi>X</mi><mn>2</mn></msup><mo>)</mo>
<mo>−</mo>
<msup><mrow><mo>{</mo><mi>E</mi><mo>(</mo><mi>X</mi><mo>)</mo><mo>}</mo></mrow><mn>2</mn></msup>
</mrow>
</math>
V(X) = E(X^2) - (E(X))^2
Total[x^2*p] - Total[x*p]^2
VX := add(x[i]^2*p[i], i = 1..n) - EX^2;
VX = sum(x.^2 .* p) - EX^2;
V(X) = E(X^2) - (E(X))^2
σ(X) = √V(X)
\sigma(X) = \sqrt{V(X)}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>σ</mi><mo>(</mo><mi>X</mi><mo>)</mo>
<mo>=</mo>
<msqrt><mi>V</mi><mo>(</mo><mi>X</mi><mo>)</mo></msqrt>
</mrow>
</math>
sigma(X) = sqrt(V(X))
Sqrt[Total[x^2*p] - Total[x*p]^2]
sigmaX := sqrt(VX);
sigmaX = sqrt(VX);
σ(X) = √(V(X))
ChatGPT に聞いて計算してもらう方法
あなたは数学(確率・統計)の計算アシスタントです。次の計算を、必ずPythonコードを実際に実行して行い、実行結果の数値だけを根拠に回答してください(暗算や推測で答えないでください)。
確率変数 X の確率分布が次の表のとおりです。
値 x: 0, 100, 500, 10000
確率 p: 0.7, 0.2, 0.09, 0.01
次の内容をそれぞれ示してください。
1. 確率の合計が1になっているかの確認
2. 期待値 E(X)(約分済みの分数または整数と、小数の両方で)
3. 分散 V(X)(計算式 E(X²) − {E(X)}² を使い、E(X²) の値も示すこと)
4. 標準偏差 σ(X)(小数で)
Pythonでは標準ライブラリの fractions モジュールを使って厳密に計算し、計算に使った式と実行結果の数値を示してください。
計算ドリル(演習問題)
このページの式を、自分の手で計算できるようになるための演習問題です。
答えと解説は解答ページにあります。
使い方
-
1数値を入力計算したい数値を入力欄に入力します
-
2計算「計算する」ボタンを押します
-
3結果を確認計算結果がその場に表示されます。計算の考え方や式の解説も同じページで確認できます
DataChefの特徴
専門知識不要、直感的で簡単な操作
個人情報を登録することなく使用できます
「ダウンロード」押下でファイルを自動削除
クレジット表記不要
商用利用許諾の連絡も不要です
