List of usage examples for org.apache.commons.math.stat.descriptive DescriptiveStatistics getVariance
public double getVariance()
From source file:playground.johannes.gsv.sim.cadyts.ODCountsAnalyzer.java
@Override public void notifyAfterMobsim(AfterMobsimEvent event) { Network network = event.getControler().getScenario().getNetwork(); DescriptiveStatistics diff = new DescriptiveStatistics(); DescriptiveStatistics absDiff = new DescriptiveStatistics(); DescriptiveStatistics error = new DescriptiveStatistics(); DescriptiveStatistics absError = new DescriptiveStatistics(); try {/*from www. jav a2 s . c om*/ String file = event.getControler().getControlerIO().getIterationFilename(event.getIteration(), "odCounts.txt"); BufferedWriter writer = new BufferedWriter(new FileWriter(file)); writer.write("id\tobs\tsim"); writer.newLine(); for (Count count : counts.getCounts().values()) { if (count.getLocId().toString().startsWith(ODCalibrator.VIRTUAL_ID_PREFIX)) { Link link = network.getLinks().get(count.getLocId()); double refVal = count.getMaxVolume().getValue() * 24; double simVal = simResults.getSimValue(link, 0, 86400, TYPE.COUNT_VEH); double err = (simVal - refVal) / refVal; error.addValue(err); absError.addValue(Math.abs(err)); double delta = simVal - refVal; diff.addValue(delta); absDiff.addValue(Math.abs(delta)); writer.write(link.getId().toString()); writer.write("\t"); writer.write(String.valueOf(refVal)); writer.write("\t"); writer.write(String.valueOf(simVal)); writer.newLine(); } } writer.close(); logger.info(String.format("OD-relations diff: avr = %s, median = %s, var = %s, min = %s, max = %s", diff.getMean(), diff.getPercentile(50), diff.getVariance(), diff.getMin(), diff.getMax())); logger.info( String.format("OD-relations absolute diff: avr = %s, median = %s, var = %s, min = %s, max = %s", absDiff.getMean(), absDiff.getPercentile(50), absDiff.getVariance(), absDiff.getMin(), absDiff.getMax())); logger.info(String.format( "Relative OD-relations error: avr = %s, median = %s, var = %s, min = %s, max = %s", error.getMean(), error.getPercentile(50), error.getVariance(), error.getMin(), error.getMax())); logger.info(String.format( "Absolute relative OD-relations error: avr = %s, median = %s, var = %s, min = %s, max = %s", absError.getMean(), absError.getPercentile(50), absError.getVariance(), absError.getMin(), absError.getMax())); file = event.getControler().getControlerIO().getOutputFilename("odCountsDiff.txt"); writeStats(file, diff, event.getIteration()); file = event.getControler().getControlerIO().getOutputFilename("odCountsAbsDiff.txt"); writeStats(file, absDiff, event.getIteration()); file = event.getControler().getControlerIO().getOutputFilename("odCountsError.txt"); writeStats(file, error, event.getIteration()); file = event.getControler().getControlerIO().getOutputFilename("odCountsAbsError.txt"); writeStats(file, absError, event.getIteration()); } catch (IOException e) { e.printStackTrace(); } }
From source file:playground.johannes.gsv.sim.cadyts.ODCountsAnalyzer.java
private void writeStats(String file, DescriptiveStatistics stats, int iteration) throws IOException { boolean append = true; if (iteration == 0) append = false;//from www .ja v a2s. c om BufferedWriter writer = new BufferedWriter(new FileWriter(file, append)); if (!append) { writer.write("avr\tmedian\tvar\tmin\tmax"); writer.newLine(); } writer.write(String.valueOf(stats.getMean())); writer.write("\t"); writer.write(String.valueOf(stats.getPercentile(50))); writer.write("\t"); writer.write(String.valueOf(stats.getVariance())); writer.write("\t"); writer.write(String.valueOf(stats.getMin())); writer.write("\t"); writer.write(String.valueOf(stats.getMax())); writer.newLine(); writer.close(); }
From source file:playground.johannes.snowball2.GraphStatistic.java
protected TObjectDoubleHashMap<String> getStatisticsMap(DescriptiveStatistics stats) { TObjectDoubleHashMap<String> statsMap = new TObjectDoubleHashMap<String>(); statsMap.put(MIN_KEY, stats.getMin()); statsMap.put(MAX_KEY, stats.getMax()); statsMap.put(MEAN_KEY, stats.getMean()); statsMap.put(VARIANCE_KEY, stats.getVariance()); statsMap.put(SKEWNESS_KEY, stats.getSkewness()); statsMap.put(KURTOSIS_KEY, stats.getKurtosis()); return statsMap; }