private Tree TreeForFeature(Feature feature) { Tree found; if (Branches.TryGetValue(feature, out found)) { return found; } return null; }
public Instance Split(string axis, string value) { var splitFeature = new Feature(value, axis); var featureSplit = Features.Where(f => !f.Equals(splitFeature)).ToList(); // no split happened if (featureSplit.Count == Features.Count) { featureSplit = new List<Feature>(); } return new Instance { Output = Output, Features = featureSplit }; }
protected bool Equals(Feature other) { return string.Equals(Value, other.Value) && string.Equals(Axis, other.Axis); }
public DecisionTreeSet Split(Feature feature) { return Split(feature.Axis, feature.Value); }