我有一组基准数据,我使用 Apache Math Commons 计算汇总统计数据。现在我想使用该包来计算算术平均值的置信区间,例如运行时间测量。
这可能吗?我确信该软件包支持这一点,但是我不知道从哪里开始。
这是我在 Brent Worden 的建议帮助下最终使用的解决方案:
private double getConfidenceIntervalWidth(StatisticalSummary statistics, double significance) {
TDistribution tDist = new TDistribution(statistics.getN() - 1);
double a = tDist.inverseCumulativeProbability(1.0 - significance / 2);
return a * statistics.getStandardDeviation() / Math.sqrt(statistics.getN());
}
最佳答案
Apache Commons Math 不直接支持构建置信区间。但是,它确实拥有计算它们所需的一切。
首先,使用SummaryStatistics ,或其他一些 StatisticalSummary实现将您的数据汇总到样本统计信息中。
接下来,使用TDistribution计算所需置信度的临界值。自由度可以从汇总统计的 n
属性中推断出来。
最后,使用汇总统计中的mean
、variance
和n
属性值以及分布中的 t 临界值来计算您的置信上限和下限。
关于java - 使用 Apache Commons Math 确定置信区间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5564621/