Utility class to build Tree models for a
Whether or not to consider null (missing) values for split criteria
The dataset to mine.
Minimal % of the total number of records represented by a node that should be covered by a branch. If a branch covers fewer records than this value, it is ignored
Which metric to use to judge split quality. This metric is returned as the split "score" by
Default (maximum) number of branches per node
The target field whose value is to be derived through this tree. This field should be part of
Whether or not to track distribution information for tree nodes
..Tree = $i ..Tree(NodeId) = $lb(parent, targetValue, confidence, count, isLeaf) ..Tree(NodeId, "condition") = [AND|OR|$lb(field, operator, value)] ..Tree(NodeId, "ch", ChildNode) = "" ..Tree(NodeId, "distribution", value) = count
Builds a tree structure with a maximum depth of pMaxDepth.
If a tree structure was already built, this method silently exits. Use
Resetto erase an existing tree structure.
Returns an unsorted array of candidate splits for node pNode: pSplits(n) = $lb(score, coverage, targetValue, confidence, recordCount, isLeaf) pSplits(n,"condition") = ...
Returns the inverse of pFilter, equivalent to a boolean NOT of the entire pFilter.
Returns the combination of filter conditions (pFilters) a record should satisfy to end up in node pNode. This is a combination of the node's own condition, its full ancestry and any prior siblings' conditions.
Appends pOtherFilter to pFilter using pLogic logic
Prints the tree (starting with pNode) to the terminal.
After changing building parameters, run this method to erase the current tree structure so
Buildcan be run again.
Splits node pNode in
SplitsPerNodesub-nodes (or fewer, if not enough candidate splits satisfy coverage and other selection criteria).