Implementations of decision tree construction algorithms, done during my time at GUCAS Beijing.
The source code is well documented, so don't be afraid to poke around in the files for more information on functionality.
With a CSV file
example_data for formatting), the
following creates a decision tree using the ID3
algorithm and enters a REPL loop where decisions can be made with by inputting
python id3.py filename.csv --decide
The decision rules for the decision tree can also be printed with the
Learning from testing and training sets is also supported. Try this as test data:
python id3.py example_data/breast-cancer-training.csv -t example_data/breast-cancer-testing.csv
Support for outputting testing set predictions to CSV will be added soon.
python id3.py --help for more details.
A very simple recursively defined class used to represent decision trees.
Has a couple of data sets of varying complexity. Breast cancer data taken from UCI Machine Learning and modified to fit script requirements.
Class abstraction and encapsulation needs to be improved.