在工作中,我们有一个硬件设备由于某些尚未确定的原因而出现故障。我的任务是查看是否可以通过更改其软件驱动程序来使该设备不发生故障。我已经构建了一个软件测试平台,它迭代了我认为最有可能导致设备失败的驱动程序功能。到目前为止,我已经强制执行了 7 次这样的失败,并且设备失败的迭代如下:
100 22 36 44 89 24 74
平均值 = 55.57 标准偏差 = 31.81
接下来,我对设备驱动程序进行了一些软件更改,并且在手动停止测试之前能够运行设备 223 次迭代而没有失败。
我希望能够回到我的老板那里并说“我们能够运行该设备 223 次迭代而没有失败的事实意味着我的软件更改有 X% 的概率可以解决问题。” 我也会对设备在此修复后仍会失败的相反概率感到满意。
如果我们假设设备失败的迭代是正态分布的,我们可以说进行 223 次迭代而不失败是平均值的 5.26 个标准差,大约有 1400 万分之一的机会发生。但是,因为我们只有 7 个样本(不包括 223 个),所以我相当肯定假设正常是不明智的。
这就是我认为学生 t 检验发挥作用的地方。使用 6 个自由度的 t 检验,我计算出实际总体平均值有 99% 的概率小于 94。
所以现在我向你们提出的问题是,是否允许我以 99% 的把握说达到 223 次迭代而不失败是 4.05 sigma 事件,即?我是否允许在该计算中使用 31.81 样本标准差,或者我应该做一些其他测试来获得 99% 的最大标准差置信度,然后在我的计算中使用它来计算有多少 sigma 223 真的离开了从 99% 置信水平的平均值?
谢谢!
更新
我在这里收到的答案超出了我的任何预期。我真的很感谢你们中的许多人投入的时间和想法。我有很多事情要考虑。
为了回应 whuber 对数据似乎不遵循指数分布的担忧,我相信我知道为什么。其中一些试验是在我认为是软件修复的情况下运行的,但最终以失败告终。如果这些试验是我们看到的 74 89 100 分组,我不会感到惊讶。尽管我无法解决问题,但似乎我确实能够扭曲数据。我会检查我的笔记,看看是否是这种情况,我很抱歉没有记得早些时候包含那条信息。
让我们假设上述情况为真,我们将从数据集中删除 74 89 100。如果我要使用原始驱动程序重新运行设备并获得值为 15 20 23 的附加故障数据点,那么您将如何计算 95% 置信水平下的指数分布参数预测限制?与假设独立的伯努利试验来找出 223 次迭代中没有失败的概率相比,您是否觉得这个预测极限仍然是一个更好的统计数据?
更仔细地查看关于预测限制的维基百科页面,假设 Excel 上的总体均值和未知标准差未知,我计算了 99% 置信水平的参数预测限制,如下所示:
由于我对 223 的试验超出了 [-70.51 , 181.65] 的 99% 置信区间,我可以假设基础分布是 T 分布的情况下以 99% 的概率假设这是固定的吗?我想确保我的理解是正确的,即使底层分布很可能是指数分布,而不是正态分布。我丝毫不知道如何调整潜在指数分布的方程。
更新 2
所以我真的对这个“R”软件很感兴趣,我以前从未见过它。早在我上统计课时(几年前),我们使用的是 SAS。无论如何,根据我从 Owe Jessen 的示例中收集到的粗略知识和 Google 的一些帮助,我想我想出了以下 R 代码来生成预测极限,假设数据集假设为指数分布
如果我做对了,请告诉我:
fails <- c(22, 24, 36, 44, 15, 20, 23)
fails_xfm <- fails^(1/3)
Y_bar <- mean(fails_xfm)
Sy <- sd(fails_xfm)
df <- length(fails_xfm) - 1
no_fail <- 223
percentile <- c(.9000, .9500, .9750, .9900, .9950, .9990, .9995, .9999)
quantile <- qt(percentile, df)
UPL <- (Y_bar + quantile*Sy*sqrt(1+(1/length(fails_xfm))))^3
plot(percentile,UPL)
abline(h=no_fail,col="red")
text(percentile, UPL, percentile, cex=0.9, pos=2, col="red")
