平均値・標準偏差・標本サイズを持つデータフレームに母分散既知・未知(標準分布とt分布)の母平均の95%信頼区間を追加するコードです。
from scipy import stats import pandas as pd df = pd.DataFrame({ "mean": (0, 1, 2, 3), "sd": (1, 10, 1, 10), "n": (1, 10, 100, 1000)}) df[["norm-95%cil", "norm-95%cih"]] = df.apply( lambda row: stats.norm.ppf((0.025, 0.975), row["mean"], row["sd"]), axis=1, result_type="expand") df[["t-95%cil", "t-95%cih"]] = df.apply( lambda row: stats.t.ppf((0.025, 0.975), row["n"], row["mean"], row["sd"]), axis=1, result_type="expand") print(df) # mean sd n norm-95%cil norm-95%cih t-95%cil t-95%cih #0 0 1 1 -1.959964 1.959964 -12.706205 12.706205 #1 1 10 10 -18.599640 20.599640 -21.281389 23.281389 #2 2 1 100 0.040036 3.959964 0.016028 3.983972 #3 3 10 1000 -16.599640 22.599640 -16.623391 22.623391