Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

A scikit-learn compatible package for id3 decision tree

Project description

Travis Status Coveralls Status CircleCI Status


decision-tree-id3 is a module created to derive decision trees using the ID3 algorithm. It is written to be compatible with Scikit-learn’s API using the guidelines for Scikit-learn-contrib. It is licensed under the 3-clause BSD license.



  • Python (>= 2.7 or >= 3.3)
  • NumPy (>= 1.6.1)
  • Scikit-learn (>= 0.17)

The package by itself comes with a single estimator Id3Estimator. To install the module:

pip install decision-tree-id3

or clone the project using:

git clone
cd decision-tree-id3
python install


If the installation is successful, you should be able to execute the following in Python:

>>> from sklearn.datasets import load_breast_cancer
>>> from id3 import Id3Estimator
>>> from id3 import export_graphviz

>>> bunch = load_breast_cancer()
>>> estimator = Id3Estimator()
>>> export_graphviz(estimator.tree_, '', bunch.feature_names)

And to generate a PDF of the decision tree using GraphViz:

dot -Tpdf -o tree.pdf

There are a number of different default parameters to control the growth of the tree: - max_depth, the max depth of the tree. - min_samples_split, the minimum number of samples in a split to be considered. - prune, if the tree should be post-pruned to avoid overfitting and cut down on size. - gain_ratio, if the algorithm should use gain ratio when splitting the data. - min_entropy_decrease, the minimum decrease in entropy to consider a split. - is_repeating, repeat the use of features.

For more in depth information see the documentation

Project details

Release history Release notifications

This version
History Node


History Node


History Node


History Node


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
decision-tree-id3-0.1.2.tar.gz (12.9 kB) Copy SHA256 hash SHA256 Source None May 19, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page