two-tailed t-test with paired samples
t-test
stats.ttest_ind
和
stats.ttest_rel
是用来进行 t-test(t 检验)的两个函数。 t 检验常常用于检验两个数据集之间的差异是否显著
stats.ttest_ind
适用于两个独立的数据集(独立样本)。也就是说,两个数据集的观测值没有相互关联,每个观测值都来自于不同的实验条件或组
而
stats.ttest_rel
适用于两个相关(配对)的数据集,也就是说,两个数据集中的每个观测值都与对应的另一个观测值相关联,并且两个数据集中的观测值来自于同一个实验条件或组
如果假设检验的 p 值小于给定的显著性水平,我们拒绝原假设,这表明数据支持存在显著差异的备择假设。如果 p 值大于显著性水平,我们没有足够的证据来拒绝原假设(通常,显著性水平可以设定为
0.05
)
import numpy as np
from scipy import stats
def get_p_value(arrA, arrB):
a = np.array(arrA)
b = np.array(arrB)
# t, p = stats.ttest_ind(a, b, equal_var=True)
t, p = stats.ttest_rel(a, b, nan_policy='omit')
return t, p
_, pvalue = get_p_value([1, 2, np.nan, 5, 6], [1, 2, 3, 4, 5])
print(pvalue)
# 0.1816901138162094
_, pvalue = get_p_value([1, 2, np.nan, 5, 6], [1, 2, np.nan, 4, 5])
print(pvalue)
# 0.1816901138162094
_, pvalue = get_p_value([1, 2, 3, 5, 6], [50, 40, 10, 20, 30])
print(pvalue)
# 0.02496449687308703
最后编辑于:2024 年 07 月 23 日 18:56