如何确定具有n个自由度的t-分布的P值。
关于这个主题的研究向我指出了这个堆栈交换答案:https://stackoverflow.com/a/17604216
我认为np.abs(tt)是T值,但我如何在自由度上工作,是n-1?
提前致谢
答案 0 :(得分:6)
是的,n-1
是该示例中的自由度。
给定t值和自由度,您可以使用scipy.stats.t
(也称为互补CDF)的“生存函数”sf
来计算单侧p值。第一个参数是T值,第二个参数是自由度。
例如,the table on this page的第一个条目表示对于1个自由度,p = 0.1的临界T值是3.078。以下是使用t.sf
验证的方法:
In [7]: from scipy.stats import t
In [8]: t.sf(3.078, 1)
Out[8]: 0.09999038172554342 # Approximately 0.1, as expected.
对于双侧p值,只需将单侧p值加倍。