scipy.stats.t.interval() コマンドを使い、平均の信頼区間を計算する。
Python を起動し、pandas と scipy.stats を import する。
import pandas as pd from scipy import stats
通常は Excel 等で作成した CSV ファイルを pandas に読み込んで分析する。しかし、ここでは便宜的に以下の簡単なデータフレームを作成し、data という変数に格納しておく。
data = pd.DataFrame({"手術時間":[60,50,100,90,30,40], "出血量":[15,25,35,55,45,25]})
data の内容を確認する。
data
ここでは手術時間の平均の信頼区間を計算してみる。data から手術時間を抽出し、time という変数に格納しておく。
time = data["手術時間"]
平均の信頼区間の計算のためには、(1) 信頼水準 (alpha)、(2) 自由度 (df)、(3) 標本平均 (loc)、(4)標準誤差 (scale) の情報が必要なため、あらかじめこれらを計算する。
a = 0.95 #信頼水準。ここでは 95%。 d = len(time)-1 #自由度 (= サンプルサイズ-1) m = time.mean() #標本平均 s = stats.sem(time) #標準誤差。不偏分散から計算。
分布を t 分布と仮定して stats.t.interval() コマンドで信頼区間を計算する。
stats.t.interval(alpha = a, df = d, loc = m, scale =s)
scipy.stats.norm.interval() コマンドを使えば正規分布を仮定することもできる。
stats.norm.interval(alpha = a, loc = m, scale = time.std()) #time.std() は標準偏差。