@Test public void testRegressionNALearn() { int ndim = 5; ExtraTrees et = getET(100, ndim, false); ExtraTrees etw = getET(100, ndim, true); et.learnTrees(3, 3, 5); etw.learnTrees(3, 3, 5); double[] x = new double[ndim]; for (int i = 0; i < x.length; i++) { x[i] = Double.NaN; } double[] val; val = et.getValues(new Matrix(x, 1, ndim)); assertTrue(Double.isNaN(val[0])); val = etw.getValues(new Matrix(x, 1, ndim)); assertTrue(Double.isNaN(val[0])); // checking if getRange works with NaN double[] col2 = ((Matrix) et.input).getCol(2); double[] range2 = AbstractTrees.getRange(col2); assertEquals(0.5, range2[0], 1e-6); assertEquals(0.5, range2[1], 1e-6); }