Node loChild = build(rng, loSubset);
Data hiSubset = data.subset(Condition.greaterOrEquals(best.getAttr(), best.getSplit()));
Node hiChild = build(rng, hiSubset);
childNode = new NumericalNode(best.getAttr(), best.getSplit(), loChild, hiChild);
} else { // CATEGORICAL attribute
selected[best.getAttr()] = true;
double[] values = data.values(best.getAttr());
Node[] children = new Node[values.length];