我有一些t值和自由度,想要从中找到p值(它是双尾的)。在现实世界中,我会在统计教科书的背面使用t检验表;我如何在Python中执行等效操作?
e.g。
t-lookup(5, 7) = 0.00245
或类似的东西。
我在SciPy中知道如果我有阵列我可以scipy.stats.ttest_ind
,但我没有。我只有统计数据和自由度。
答案 0 :(得分:32)
从 http://docs.scipy.org/doc/scipy/reference/tutorial/stats.html
作为练习,我们也可以直接计算我们的测试而不使用 提供的功能,应该给我们相同的答案,所以它 作用:
tt = (sm-m)/np.sqrt(sv/float(n)) # t-statistic for mean
pval = stats.t.sf(np.abs(tt), n-1)*2 # two-sided pvalue = Prob(abs(t)>tt)
print 't-statistic = %6.3f pvalue = %6.4f' % (tt, pval)
t-statistic = 0.391 pvalue = 0.6955