Skip to main content

Creates tree data structures easily

Project description

Overview

SuperNodes is a Python package that creates tree data structures easily. It is designed to be similar to Python dictionaries but with more functions. The trees can be used:

  • For storing data
  • As decision trees
  • Both for storing data and as decision trees.

How to install

Run this command to install SuperNodes:

pip install supernodes

How to create a tree

To create a tree, first create the root node:

from supernodes import SuperNode

root_node = SuperNode(name="root")

You can add children nodes to the root node using different methods:

  • Using append function:
child_1 = SuperNode(name="child-1")
child_2 = SuperNode(name="child-2")
root_node.append(child_1)
root_node.append(child_2)
  • Using indexer:
root_node['child-1'] = SuperNode()
root_node['child-2'] = SuperNode()
  • Using split:
root_node.split(num=2, names=['child-1', 'child-2'])

You can view more methods for adding children nodes SuperNodes methods.

How to use as a decision tree

To create a tree that can be used as a decision tree, create the root node and add an inequality string or a function inside the function parameter:

root_node = SuperNode(name="root-node", function="x > 10")

Then create the children and add their names to the attributes, child_name_if_true and child_name_if_false.

root_node['first-child'] = SuperNode()
root_node['second-child'] = SuperNode()
root_node.child_name_if_true = "first-child"
root_node.child_name_if_false = "second-child"

Run the decision tree:

leaf = root_node.run_as_binary_tree(x=11)

Documentation

You can find the documentation in this link: SuperNodes docs.

More examples

You can find more examples this link: SuperNodes examples.

License and Copyrights

Copyrights (c) 2023 Mubarak Almehairbi. This package is licensed under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

supernodes-1.0.1.tar.gz (9.4 kB view hashes)

Uploaded Source

Built Distribution

supernodes-1.0.1-py3-none-any.whl (9.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page