대수의 법칙 시뮬레이션
2214 단어 통계학
■ Python 샘플 코드
# 統計学入門(東京大学出版会)の「大数の法則」シミュレーション
# [0,1)の乱数を発生させ、0.4未満なら成功(1)、0.4以上なら失敗(0)とする。
# (ベルヌーイ試行)
# 試行回数が増えた時に0.4に確率収束するかシミュレーションする。
import numpy as np
n = 20000
x, y , r = np.array([]), np.array([]), np.array([])
for i in range(n):
r = np.append(r, (1 if np.random.rand(1)<0.4 else 0))
if i%100 == 0:
x = np.append(x, i)
y = np.append(y, r.mean())
fig, ax = plt.subplots()
ax.set_title('Law of large numbers - Simulation', fontsize = 14)
ax.set_xlabel('Number of trials')
ax.set_ylabel('Probability')
ax.set_ylim(0.35, 0.45)
ax.grid()
plt.plot(x, y)
plt.show()
■ 결과
<1회째>
<2회째>
<3회째>
<4회째>
■ 정리
1회째~3회째는 시행 횟수가 증가함에 따라, 확실히 수렴하고 있는 것을 볼 수 있습니다.
4번째는 아직 수렴에는 이르지 않은 것 같습니다만, 이 법칙은 시행 회수를 늘리면 관측된 값이 이론상의 기대치 근방에 가까워지는 「확률이 높아진다」라는 의미이므로 그렇게 되어 있지 않다 케이스라고 하는 것이군요. 그것이 "확률 수렴"이 의미하는 곳이라고 이해했습니다.
Reference
이 문제에 관하여(대수의 법칙 시뮬레이션), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sin-nakamura/items/ad819584e4e9588bb566텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)