python参数估计_用python求参数估计的置信区间

数据选自Journal of the American Medical Association(http://jse.amstat.org/v4n2/datasets.shoemaker.html

)关于体温、性别、心率的临床数据

现对男性体温抽样计算下95%置信区间总体均值范围。

1、读取数据

import pandas as pd

import numpy as np

import seaborn as sns

import matplotlib.pyplot as plt

#读取数据

df = pd.read_csv('http://jse.amstat.org/datasets/normtemp.dat.txt', header = None,sep = '\s+' ,names=['体温','性别','心率'])

体温数据.png

2、选取样本大小,查看数据

np.random.seed(42)

#df.describe()

#样本量为90,查看样本数据

df_sam = df.sample(90)

df_sam.head()

样本数据.jpeg

3、计算抽取样本中男士体温的均值

df3 = df_sam.loc[df_sam['性别']==1]

df3['体温'].mean()

4、重复抽取样本,计算其他样本中男士体温的均值,得到抽样分布

boot_means = []

for _ in range(10000):

bootsample = df.sample(90, replace=True)

mean = bootsample[bootsample['性别'] == 1]['体温'].mean()

boot_means.append(mean)

5、绘制男士体温抽样分布均值

男士体温抽样分布均值.png

6、计算抽样分布的置信区间以估计总体均值, 置信度95%

np.percentile(boot_means, 2.5), np.percentile(boot_means, 97.5)

(97.89249519230768, 98.30741452991455)

你可能感兴趣的:(python参数估计)