package eu.choreos.vv.analysis; import java.util.ArrayList; import java.util.List; import org.apache.commons.math.stat.inference.TestUtils; import eu.choreos.vv.data.ReportData; import eu.choreos.vv.data.ExperimentReport; public class ANOVATest extends Analyzer { @Override public void analyse(ExperimentReport report) throws Exception { List<double[]> classes = new ArrayList<double[]>(); for (ReportData data : report.values()) { double[] sample = doubleArray(data.getMeasurements("responseTime")); classes.add(sample); } String test = TestUtils.oneWayAnovaTest(classes, 0.01) ? "not equivalent" : "equivalent"; System.out.println("samples in " + report.getName() + " are " + test); } private double[] doubleArray(List<Number> list) { double[] result = new double[list.size()]; for (int i = 0; i < result.length; i++) { result[i] = list.get(i).doubleValue(); } return result; } }