在SciPy中使用什么意义测试用于spearmanr?

TLo*_*Lou 5 python statistics scipy

在scipy.stats.spearmanr中使用什么类型的重要性测试来产生它吐出的p值?文档只是说它是一个双面的p值,但关于什么分布?这是一个t分布吗?

Lis*_*isa 5

根据文档

p值大致表示不相关系统生成的数据集具有Spearman相关性至少与从这些数据集计算得出的极端一样高的概率。p值并不完全可靠,但对于大于500左右的数据集可能是合理的。

当您查看源代码时,您会看到它们计算出t值:

% rs is rho
t = rs * np.sqrt((n-2) / ((rs+1.0)*(1.0-rs)))
Run Code Online (Sandbox Code Playgroud)

然后假设t分布具有两个自由度,然后计算p值:

prob = distributions.t.sf(np.abs(t),n-2)*2
Run Code Online (Sandbox Code Playgroud)

Wikipedia上,这也是计算统计显着性的一种选择。