scipyttest_1samp返回一个元组,带有t统计量和双尾p值。
例子:

ttest_1samp([0,1,2], 0) = (array(1.7320508075688774), 0.22540333075851657)

但我只对t检验(t统计量)的浮动感兴趣,我只能通过使用[0].ravel()[0]
例子:
ttest_1samp([0,1,2], 0)[0].ravel()[0] = 1.732

不过,我很确定一定有一种更像蟒蛇的方法来做这件事从这个输出中获取浮点的最佳方法是什么?

最佳答案

fromthe source codescipy.stats.ttest_1samp只返回带统计值和p值的anamedtupleTtest_1sampResult。因此,您不需要使用.ravel-您可以简单地使用

scipy.stats.ttest_1samp([0,1,2], 0)[0]

以获取统计数据。
笔记
从进一步的源代码来看,很明显,这个namedtuple只在0.14.0版中开始返回。在0.13.0版和更早版本中,似乎a zero dim array is returned(源代码),无论出于何种目的,它都可以像brenbarn所提到的一个普通数字一样工作。

09-20 19:31