InEquality#
- class supernodes.operations.InEquality(inequality: str, strings_to_numbers=True)[source]#
Bases:
object
Runs an inequality operation from an inequality string. This is helpful when running a tree as a decision tree.
Examples
Running an inequality:
>>> inequality = InEquality("x == 10") >>> inequality(x=7) False
>>> inequality = InEquality("x == -10") >>> inequality(x=-10) True
>>> inequality = InEquality("y != 9.01") >>> inequality(y=9.01) False
Including a list in the inequality:
>>> inequality = InEquality("x[0] > x[1]") >>> inequality(x=[10, 20]) False
Note that slicing is not yet supported when using lists.
Including two variables in the inequality:
>>> inequality = InEquality("x == y") >>> inequality(x=10, y=10) True
Including an inequality in a binary decision tree:
>>> from supernodes import SuperNode >>> inequality = InEquality("x < 100") >>> main_node = SuperNode(name="main-node", function=inequality) >>> main_node['first-child'] = SuperNode() >>> main_node['second-child'] = SuperNode() >>> main_node.child_name_if_true = "first-child" >>> main_node.child_name_if_false = "second-child"
Running the decision tree:
>>> main_node.run_as_binary_tree(x=101) (name=second-child, value: NoneType)