如果我有变量数字的数据馈送,我该如何计算平均值和标准差 动态变量,即每当新输入值可用时更新它。
我正在寻找Java环境中的解决方案。
问候
答案 0 :(得分:1)
意思是: 您将保留两个变量:1。一个runnting总数2.到目前为止看到的项目的运行计数。平均值只是运行总计除以运行计数。
对于标准偏差: See John D. Cook's Accurately computing running variance。我过去在SQL中使用它使用窗口函数,发现它非常有用
答案 1 :(得分:0)
您可以使用SummaryStatistics class库中的Commons Math来执行此操作。
SummaryStatistics stats = new SummaryStatistics();
stats.addValue(1.0);
stats.addValue(2.0);
stats.addValue(3.5);
stats.addValue(8.0);
System.out.println("Mean: " + stats.getMean() + ", SD: " + stats.getStandardDeviation());