Python で 正規分布を ChatGPT – 4 で描く

ChatGPT – 4 に Python スクリプトおよび 得られた正規分布の図を以下に示した.

# Python で 正規分布の図を描く
import numpy as np
import matplotlib.pyplot as plt
# 正規分布のパラメータ
mu = 0  # 平均値
sigma = 1  # 標準偏差
# 点の生成
x = np.linspace(mu – 4*sigma, mu + 4*sigma, 100)
y = (1 / (np.sqrt(2 * np.pi * sigma**2))) * np.exp(-((x – mu)**2) / (2 * sigma**2))
# 図の作成
plt.figure(figsize=(8, 5))
plt.plot(x, y, label=f’μ={mu}, σ={sigma}’)
plt.title(‘正規分布のグラフ’)
plt.xlabel(‘X’)
plt.ylabel(‘確率密度’)
plt.grid(True)
plt.legend()
plt.show()

分析・観察のデータ,工業製品の制度,生物の形質データ(1)などは,しばしば正規分布にしたがう(2)ので,統計学ではデータは正規分布を示すとして扱われることが多い.

(1) 石居 進 生物統計学入門 1975 培風館 P.54

(2) Robert R. Sokal, F. James Rohlf 藤井宏一(訳) 生物統計学 1983 共立出版 P.106

Python スクリプトで得られた正規分布を以下に示した.

正規分布にしたがわないデータも多い

たとえば,% のような比率は正規分布しないとことがある(1).したがって,% が単位のデータについて正規分布することが前提の統計解析をすることはまちがっている.しかし,多くの論文ではこのことを無視して統計解析が使われている.比率はコンピュータが自由に使えない時代の産物であるから,その時代には便利な単位であっても,統計解析をパソコンで扱える今日ではその価値は限定的なものになってきていると考える.

(1) 生Robert R. Sokal, F. James Rohlf 藤井宏一(訳) 生物統計学 1983 共立出版 P.18 – 19

以下に R スクリプトで正規分布を描いてみた.

R スクリプトで得られた正規分布を以下に示した.

まとめ

(1) データの誤差,生物学的なデータ,自然現象のデータ,工業製品などの精度は,しばしば正規分布にしたがう.

(2) 比率のようによく使われる概念でも正規分布しないことがあるので,統計解析する場合は自分が扱うデータが正規分布しているかをよく考える必要がある.