Python中的一个示例和两个示例测试

2024-09-29 19:36:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我对如何处理这个问题有疑问。统计和Python的新世界。一个学生试图在两个处理单元之间做出决定。他希望在他的研究中使用处理单元来运行高性能算法,因此他唯一关心的是速度。他在一个大数据集上选择了一个高性能的算法,并在两个处理单元上运行了10次,每次运行的时间都是几个小时。下面列出了TestSample1和TestSample2的结果

from scipy import stats 
import numpy as nupy
TestSample1 = nupy.array([11,9,10,11,10,12,9,11,12,9])
TestSample2 = nupy.array([11,13,10,13,12,9,11,12,12,11])

假设:上述两个数据集样本都是随机的、独立的、参数化的&;正态分布

提示:您可以从scipy导入ttest函数以执行t测试

第一次T检验 单样本t检验检查TestSample1的平均值是否等于零。

  1. 零假设是平均值等于零
  2. 另一种假设是它不等于零

问题2 鉴于 1.无效假设:数据集之间没有显著差异 2.替代假设:存在显著差异 做两个样本测试,检查是否拒绝零假设

问题3- 进行两个样本测试,检查两个样本的速度是否存在显著差异:-TestSample1&;测试样本3

他正在尝试第三个处理单元——TestSample3

TestSample3=nupy.array([9,10,9,11,10,13,12,9,12])

假设:两个数据集(TestSample1和TestSample3)都是随机的、独立的、参数化的和;正态分布


Tags: 数据import算法参数高性能scipy差异array
1条回答
网友
1楼 · 发布于 2024-09-29 19:36:56

问题1

使用SciPy实现这一点的方法如下:

stats.ttest_1samp(TestSample1, popmean=0)

但是,在这种情况下,这不是一个有用的测试,因为我们已经知道无效假设一定是错误的。负时间是不可能的,所以人口平均时间为零的唯一方法是如果每次测量的时间始终为零,这显然不是事实

问题2

以下是如何使用SciPy对独立样本进行两样本t检验:

stats.ttest_ind(TestSample1, TestSample2)

输出:

Ttest_indResult(statistic=-1.8325416653445783, pvalue=0.08346710398411555)

因此,t统计量为-1.8,但其与零的偏差在形式上并不显著(p=0.08)。这个结果是不确定的。当然,最好有更精确的测量,而不是四舍五入到小时

在任何情况下,我都会争辩说,考虑到您所声明的设置,您实际上也不需要这个测试。两个不同的CPU不太可能执行完全相同的操作,您只需要决定使用哪一个。无论显著性测试结果如何,简单地选择平均时间较低的一个显然是正确的决定

问题3

这类似于问题2

相关问题 更多 >

    热门问题