/** * The Stats class should be initialized as follows:<p> * * Stats.count = 0<br /> * Stats.sum = 0<br /> * Stats.sumSq = 0<br /> * Stats.stdDev = Double.NaN<br /> * Stats.mean = Double.NaN<br /> * Stats.min = Double.NaN<br /> * stats.max = Double.NaN<br /> */ public void testInitialization() { checkStatsInitialized(getStats()); }
/** * The Stats class should be initialized as follows:<p> * * Stats.count = 0<br /> * Stats.sum = 0<br /> * Stats.sumSq = 0<br /> * Stats.stdDev = Double.NaN<br /> * Stats.mean = Double.NaN<br /> * Stats.min = Double.NaN<br /> * stats.max = Double.NaN<br /> */ public void testInitialization() { checkStatsInitialized(getStats()); }
private void checkAccuracy(long[] weightedValues, long mean, long stdDev, double tolerance) { Stats stats = getStats(); addWeightedStats(stats, weightedValues); stats.calculateDerived(); Stats subtracted1 = getStats(); addWeightedStatsWithSubtracts(subtracted1, weightedValues, weightedValues, 3, 3); subtracted1.calculateDerived(); Stats subtracted2 = getStats(); addWeightedStatsWithSubtracts(subtracted2, weightedValues, weightedValues, 2, 4);
private void checkAccuracy(long[] weightedValues, long mean, long stdDev, double tolerance) { Stats stats = getStats(); addWeightedStats(stats, weightedValues); stats.calculateDerived(); Stats subtracted1 = getStats(); addWeightedStatsWithSubtracts(subtracted1, weightedValues, weightedValues, 3, 3); subtracted1.calculateDerived(); Stats subtracted2 = getStats(); addWeightedStatsWithSubtracts(subtracted2, weightedValues, weightedValues, 2, 4);
stats = getStats(); stats.add(value, weight); checkStatsInvalidState(stats); stats = getStats(); stats.subtract(value, weight); checkStatsInvalidState(stats); stats = getStats(); addWeightedStats(stats, weightedValues2); stats.add(value, weight); stats = getStats(); addWeightedStats(stats, weightedValues2); stats.subtract(value, weight); stats = getStats(); subtractWeightedStats(stats, weightedValues2); stats.add(value, weight); stats = getStats(); subtractWeightedStats(stats, weightedValues2); stats.subtract(value, weight);
stats = getStats(); stats.add(value, weight); checkStatsInvalidState(stats); stats = getStats(); stats.subtract(value, weight); checkStatsInvalidState(stats); stats = getStats(); addWeightedStats(stats, weightedValues2); stats.add(value, weight); stats = getStats(); addWeightedStats(stats, weightedValues2); stats.subtract(value, weight); stats = getStats(); subtractWeightedStats(stats, weightedValues2); stats.add(value, weight); stats = getStats(); subtractWeightedStats(stats, weightedValues2); stats.subtract(value, weight);
stats = getStats(); stats.add(1.0, 1.0); stats.calculateDerived(); assertNaN(descr, stats.stdDev); stats = getStats(); stats.add(2.0, 0.5); stats.calculateDerived(); assertNaN(descr, stats.stdDev); stats = getStats(); stats.add(-10.0, 0.10986); stats.calculateDerived(); stats = getStats(); addWeightedStats(stats, 1.0, 1.0, 2.0, 2.0, 3.0, 1.0); subtractWeightedStats(stats, 1.0, 1.0, 2.0, 2.0); stats = getStats(); subtractWeightedStats(stats, 1.0, 1.0, 2.0, 2.0); addWeightedStats(stats, 1.0, 1.0, 2.0, 2.0, 3.0, 1.0); stats = getStats(); addWeightedStats(stats, 1.0, 0.1, 2.0, 0.2, 3.0, 0.3); stats.calculateDerived(); assertNaN(descr, stats.stdDev); stats = getStats(); addWeightedStats(stats, 1.0, 0.2, 2.0, 0.2, 3.0, 0.4);
stats = getStats(); stats.add(1.0, 1.0); stats.calculateDerived(); assertNaN(descr, stats.stdDev); stats = getStats(); stats.add(2.0, 0.5); stats.calculateDerived(); assertNaN(descr, stats.stdDev); stats = getStats(); stats.add(-10.0, 0.10986); stats.calculateDerived(); stats = getStats(); addWeightedStats(stats, 1.0, 1.0, 2.0, 2.0, 3.0, 1.0); subtractWeightedStats(stats, 1.0, 1.0, 2.0, 2.0); stats = getStats(); subtractWeightedStats(stats, 1.0, 1.0, 2.0, 2.0); addWeightedStats(stats, 1.0, 1.0, 2.0, 2.0, 3.0, 1.0); stats = getStats(); addWeightedStats(stats, 1.0, 0.1, 2.0, 0.2, 3.0, 0.3); stats.calculateDerived(); assertNaN(descr, stats.stdDev); stats = getStats(); addWeightedStats(stats, 1.0, 0.2, 2.0, 0.2, 3.0, 0.4);
stats = getStats();
stats = getStats(); subtractWeightedStats(stats, weightedValues1); checkStatsNegativeCount(stats); stats = getStats(); addWeightedStats(stats, weightedValues1); stats.calculateDerived(); reference = getStats(); stats = getStats(); subtractWeightedStats(stats, weightedValues1); checkStatsNegativeCount(stats); stats = getStats(); reference = getStats(); addWeightedStats(stats, weightedValues3); stats.calculateDerived();
stats = getStats(); subtractWeightedStats(stats, weightedValues1); checkStatsNegativeCount(stats); stats = getStats(); addWeightedStats(stats, weightedValues1); stats.calculateDerived(); reference = getStats(); stats = getStats(); subtractWeightedStats(stats, weightedValues1); checkStatsNegativeCount(stats); stats = getStats(); reference = getStats(); addWeightedStats(stats, weightedValues3); stats.calculateDerived();