確率分布
コイントスの確率分布を計算する例を提供します。
以下のコードは、コイントスのシミュレーションを行い、特定の回数のコイントスにおける表(”Heads”)と裏(”Tails”)の出現確率を計算し、グラフ化するものです。
1 | import numpy as np |
このコードは、指定した回数のコイントスにおける表の出現確率を計算し、確率分布を棒グラフで表示します。
コインを投げた回数(n)を変更することで、異なる試行回数における確率分布を調べることができます。
ソースコード解説
以下はソースコードの詳細な説明です。
1. import numpy as np
:
NumPyパッケージをインポートして、数値演算に使用します。
2. import matplotlib.pyplot as plt
:
Matplotlibパッケージをインポートして、グラフの描画に使用します。
3. from scipy.stats import binom
:
SciPyパッケージからbinom(二項分布)関数をインポートします。
これを使用して確率分布を計算します。
4. n = 10
:
コイントスの試行回数を10回と設定します。
これは、コイントスを10回行うという意味です。
5. p = 0.5
:
表が出る確率を0.5(50%)に設定します。
通常、コインの場合、表と裏の確率は同じであるため、0.5が使われます。
6. x = np.arange(0, n+1)
:
成功回数(表が出る回数)を表す整数の配列を作成します。
0からnまでの整数が含まれます。
この配列はx軸の値として使用されます。
7. pmf = binom.pmf(x, n, p)
:
二項分布の確率質量関数(Probability Mass Function, PMF)を使用して、各成功回数における確率を計算します。
この結果は確率分布を表す配列です。
8. plt.bar(x, pmf)
:
Matplotlibを使用して確率分布を棒グラフとして描画します。
x軸に成功回数(0からnまでの整数)、y軸に確率が表示されます。
9. plt.xlabel('Number of successes')
:
x軸のラベルを設定します。
成功回数を表します。
10. plt.ylabel('Probability')
:
y軸のラベルを設定します。
確率を表します。
11. plt.title(f'Probability distribution of getting heads in {n} coin tosses')
:
グラフのタイトルを設定します。
コイントスの試行回数に対する表の出現確率分布を示します。
12. plt.xticks(x)
:
x軸の刻み目を設定し、整数の成功回数が表示されるようにします。
13. plt.show()
:
グラフを表示します。
このコードを実行すると、指定した試行回数と確率に基づいて、コイントスの結果に関する確率分布が視覚化されます。
試行回数や確率を変更することで、異なるシナリオに対する確率分布を生成できます。
結果解説
このグラフは、コイントスの試行回数が指定された場合における表(”Heads”)の出現確率分布を表しています。
以下はグラフの詳細な説明です。
x軸(Number of successes):
この軸は、試行回数内で表(”Heads”)が出る回数を表しています。
たとえば、0回の表、1回の表、2回の表、…、n回の表の出現回数を示す整数が表示されています。
y軸(Probability):
この軸は、各成功回数における確率を表しています。
確率は、試行回数内で指定された回数の表が出る確率です。
タイトル(Title):
グラフのタイトルは、試行回数がn回の場合における表の出現確率分布を示しています。
例えば、”10回のコイントスにおける表の出現確率分布”など、試行回数に合わせて表示されます。
棒グラフ(Bar Chart):
各成功回数に対応する確率が、棒グラフとして表示されています。
棒の高さは確率を表し、試行回数が増えるにつれて、中心付近の成功回数が最も確率が高いことがわかります。
このグラフを通じて、特定の試行回数における表の出現確率が視覚的に理解でき、コイントスの結果を予測するための情報を提供します。
試行回数が大きくなるにつれて、成功回数が平均値に近づく傾向が見られることが一般的です。