· 3 min read · 834 words
最危险的方程
莫瓦方程、标准误差与置信区间:理解数据中的不确定性。
SE=nσ
上述现象正是莫瓦方程(Moivre’s equation)所预期的现象:随着学生人数的增加,平均成绩变得越来越精确。学校如果样本量很小,就可能因为纯粹的随机性而出现极高或极低的分数,这种情况在大规模学校中就不太可能发生。莫瓦方程揭示了一个关于现实中信息与数据记录的基本事实:数据永远是不精确的。那么问题就变成:它到底有多不精确?
利用置信区间来比较均值
def ci(y: pd.Series):
return (y.mean() - 2 * se(y), y.mean() + 2 * se(y))
print("95% CI for Online:", ci(online))
print("95% for Face to Face:", ci(face_to_face))
95% CI for Online: (70.56094429049804, 76.7095818797147)
95% for Face to Face: (76.80278229206951, 80.29218687459715)
我们可以观察到,各组的 95%置信区间(CI)并未重叠。面对面授课班级 CI 的下限高于在线课程 CI 的上限。这一结果表明,我们的发现并非偶然,
概括而言,置信区间是为我们的估计值提供不确定性范围的一种方法。 样本量越小,标准误差越大,置信区间也越宽。由于置信区间计算极为简便,未提供置信区间可能意味着存在不良意图或仅仅是知识匮乏,这两者同样令人担忧。最后,对于没有任何不确定性度量的测量结果,你应始终保持怀疑态度。
confidence interval of normal confidence
from scipy import stats
z = stats.norm.ppf(.995)
print(z)
ci = (exp_mu - z * exp_se, exp_mu + z * exp_se)
ci
x = np.linspace(exp_mu - 4*exp_se, exp_mu + 4*exp_se, 100)
y = stats.norm.pdf(x, exp_mu, exp_se)
plt.plot(x, y)
plt.vlines(ci[1], ymin=0, ymax=1)
plt.vlines(ci[0], ymin=0, ymax=1, label="99% CI")
plt.legend()
plt.show()

假设检验来比较均值
z统计量, 含义是:首先,我们假设相反的情况成立,即差异为零,这被称为零假设或H0 。接着,我们自问:“如果真实差异为零,观察到如此大差异的可能性有多大?”用统计学术语来说,这个问题可转化为检验我们的 z 统计量距离零有多远。
z=SEdiffμ−H0=σ2/n1−σ2/n2μ1−μ2−H0z follows normal distribution
z = diff_mu / diff_se
print(z)
x = np.linspace(-4,4,100)
y = stats.norm.pdf(x, 0, 1)
plt.plot(x, y, label="Standard Normal")
plt.vlines(z, ymin=0, ymax=.05, label="Z statistic", color="C1")
plt.legend()
plt.show()
这个数值看起来相当极端。实际上,它超过了 2,这意味着如果两组之间没有差异,我们观察到如此极端值的概率将低于 5%。这再次引导我们得出结论:从面对面授课转为在线课程会导致学术成绩在统计上显著下降。
关于假设检验最后一件有趣的事情是,它比检查处理组和未处理组的 95%置信区间是否重叠更为宽松。换言之,即便两组间的置信区间存在重叠,结果仍可能在统计学上显著