如何解决在两个数字0.85,0.18之间进行T检验,得到p值为Nan
在两个数字(0.85,0.18)之间进行t检验,得到p值为Nan
,并伴随以下错误:
也收到此错误 _,p_value = stats.ttest_ind(a = Max,b = Max_1,equal_var = False) C:\ Users \ NehaBhakat \ Anaconda31 \ lib \ site-packages \ numpy \ core \ fromnumeric.py:3584:RuntimeWarning:切片的自由度
解决方法
t检验用于确定实际上是否有两个分布来自同一人群。您不能测试两个单个值。因此,获得NaN是正确的。
分布表示您拥有一个带有所测量值的向量。要进行有意义的t检验,通常应至少包含30个值。
, scipy.stats.ttest_ind()
对两个样本进行t检验,检验2个独立样本具有相同的平均(预期)值的原假设。它希望您将两个样本(a组,b组)作为所有观测值的数组传递,以便可以计算合并的标准偏差。请参阅下面使用的公式(来自Wikipedia)
要计算标准差,我们需要每个点与均值之差,这就是为什么它要求您提供整个数据数组的原因。 Scipy documentation解释了该函数的期望值:
a,b array_like 数组必须具有相同的形状,除了与轴对应的尺寸(默认为第一个)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。