NOTICE
The upcoming release of Featuretools 1.0.0 contains several breaking changes. Users are encouraged to test this version prior to release by installing from GitHub:
pip install https://github.com/alteryx/featuretools/archive/woodwork-integration.zip
For details on migrating to the new version, refer to Transitioning to Featuretools Version 1.0. Please report any issues in the Featuretools GitHub repo or by messaging in Alteryx Open Source Slack.
Featuretools is available for Python 3.7 and 3.8. The recommended way to install Featuretools is using pip or conda:
pip
conda
python -m pip install featuretools
or from the Conda-forge channel on anaconda.org:
conda install -c conda-forge featuretools
You can install add-ons individually or all at once by running:
python -m pip install "featuretools[complete]"
Receive automatic notifications of new Featuretools releases:
python -m pip install "featuretools[update_checker]"
In order to use EntitySet.plot or featuretools.graph_feature() you will need to install the graphviz library.
EntitySet.plot
featuretools.graph_feature()
pip users:
pip install graphviz
conda users:
conda install -c conda-forge python-graphviz
Ubuntu:
sudo apt install graphviz pip install graphviz
Mac OS:
brew install graphviz pip install graphviz
Windows:
Install according to your package manager:
# conda conda install -c conda-forge python-graphviz # pip pip install graphviz
If you installed graphviz with pip, install graphviz.exe from the official source
To install featuretools from source, clone the repository from github:
git clone https://github.com/alteryx/featuretools.git cd featuretools python setup.py install
or use pip locally if you want to install all dependencies as well:
pip install .
You can view the list of all dependencies within the extras_require field of setup.py.
extras_require
setup.py
Before making contributing to the codebase, please follow the guidelines here
We recommend developing in a virtualenv:
mkvirtualenv featuretools
Run:
make installdeps
Note
In order to the run the featuretools tests you will need to have graphviz installed as described above.
Run featuretools tests:
make test
Before committing make sure to run linting in order to pass CI:
make lint
Some linting errors can be automatically fixed by running the command below:
make lint-fix
Build the docs with the commands below:
cd docs/ # small changes make html # rebuild from scatch make clean html
The Featuretools library must be import-able to build the docs.