/** * * @param results * The results table */ public void setInstances(double[][] results) { for (double[] res : results) { addInstance(res[0], res[1]); } }
@Test public void testAnalyze() { double[][] results = new double[10][2]; for (int i = 0; i < results.length; i++) { results[i][0] = i; results[i][1] = i + 1; } RegressionResultAnalyzer analyzer = new RegressionResultAnalyzer(); analyzer.setInstances(results); String analysis = analyzer.toString(); assertArrayEquals(new double[]{1.0, 1.0, 1.0}, parseAnalysis(analysis), 0); for (int i = 0; i < results.length; i++) { results[i][1] = Math.sqrt(i); } analyzer = new RegressionResultAnalyzer(); analyzer.setInstances(results); analysis = analyzer.toString(); assertArrayEquals(new double[]{0.9573, 2.5694, 3.2848}, parseAnalysis(analysis), 0); for (int i = 0; i < results.length; i++) { results[i][0] = results.length - i; } analyzer = new RegressionResultAnalyzer(); analyzer.setInstances(results); analysis = analyzer.toString(); assertArrayEquals(new double[]{-0.9573, 4.1351, 5.1573}, parseAnalysis(analysis), 0); }
@Test public void testUnpredictable() { double[][] results = new double[10][2]; for (int i = 0; i < results.length; i++) { results[i][0] = i; results[i][1] = Double.NaN; } RegressionResultAnalyzer analyzer = new RegressionResultAnalyzer(); analyzer.setInstances(results); String analysis = analyzer.toString(); assertNull(parseAnalysis(analysis)); assertArrayEquals(new int[]{0, 10, 10}, parseAnalysisCount(analysis)); for (int i = 0; i < results.length - 3; i++) { results[i][1] = Math.sqrt(i); } analyzer = new RegressionResultAnalyzer(); analyzer.setInstances(results); analysis = analyzer.toString(); assertArrayEquals(new double[]{0.9552, 1.4526, 1.9345}, parseAnalysis(analysis), 0); assertArrayEquals(new int[]{7, 3, 10}, parseAnalysisCount(analysis)); } }
/** * * @param results * The results table */ public void setInstances(double[][] results) { for (double[] res : results) { addInstance(res[0], res[1]); } }
/** * * @param results * The results table */ public void setInstances(double[][] results) { for (double[] res : results) { addInstance(res[0], res[1]); } }