scipy.stats.ttest_1samp

scipy.stats.ttest_1samp(a, popmean, axis=0, nan_policy='propagate', alternative='two-sided')[源代码]

计算一组分数平均值的T检验。

这是对零假设的检验,即独立观测样本的期望值(平均值) a 等于给定的总体平均值, popmean

参数
aarray_like

样本观察。

popmeanFLOAT或ARRAY_LIKE

零假设中的期望值。如果ARRAY_LIKE,则其形状必须与 a 不包括轴尺寸。

axis整型或无型,可选

要沿其计算测试的轴;默认值为0。如果没有,则对整个阵列进行计算 a

nan_policy{‘Propagate’,‘RAISE’,‘OMIT’},可选

定义输入包含NaN时的处理方式。以下选项可用(默认值为‘Propagate’):

  • ‘Propagate’:返回NaN

  • “raise”:引发错误

  • ‘omit’:执行计算时忽略NaN值

alternative{‘双面’,‘少’,‘大’},可选

定义了另一种假设。有以下选项可用(默认为‘双面’):

  • ‘双边’:样本潜在分布的平均值与给定总体平均值不同 (popmean )

  • ‘Less’:样本基本分布的平均值小于给定的总体平均值 (popmean )

  • “大于”:样本基础分布的平均值大于给定总体平均值 (popmean )

1.6.0 新版功能.

退货
statistic浮点或数组

t-统计量。

pvalue浮点或数组

双面p值。

示例

>>> from scipy import stats
>>> rng = np.random.default_rng()
>>> rvs = stats.norm.rvs(loc=5, scale=10, size=(50, 2), random_state=rng)

检验随机样本的均值是否等于真均值,是否等于不同均值。我们在第二种情况下拒绝零假设,在第一种情况下不拒绝它。

>>> stats.ttest_1samp(rvs, 5.0)
Ttest_1sampResult(statistic=array([-2.09794637, -1.75977004]), pvalue=array([0.04108952, 0.08468867]))
>>> stats.ttest_1samp(rvs, 0.0)
Ttest_1sampResult(statistic=array([1.64495065, 1.62095307]), pvalue=array([0.10638103, 0.11144602]))

使用轴和非标量维作为总体平均值的示例。

>>> result = stats.ttest_1samp(rvs, [5.0, 0.0])
>>> result.statistic
array([-2.09794637,  1.62095307])
>>> result.pvalue
array([0.04108952, 0.11144602])
>>> result = stats.ttest_1samp(rvs.T, [5.0, 0.0], axis=1)
>>> result.statistic
array([-2.09794637,  1.62095307])
>>> result.pvalue
array([0.04108952, 0.11144602])
>>> result = stats.ttest_1samp(rvs, [[5.0], [0.0]])
>>> result.statistic
array([[-2.09794637, -1.75977004],
       [ 1.64495065,  1.62095307]])
>>> result.pvalue
array([[0.04108952, 0.08468867],
       [0.10638103, 0.11144602]])