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]"
Use 60+ primitives from tsfresh in Featuretools:
python -m pip install "featuretools[tsfresh]"
Encode categorical data for integration into Featuretools/machine learning workflows:
python -m pip install "featuretools[categorical_encoding]"
Use Natural Language Processing Primitives for data with text in Featuretools:
python -m pip install "featuretools[nlp_primitives]"
Automated creation of normalized EntitySet from denormalized data:
EntitySet
python -m pip install "featuretools[autonormalize]"
Deep Feature Synthesis as a scikit-learn pipelines transformer:
python -m pip install "featuretools[sklearn_transformer]"
In order to use EntitySet.plot or featuretools.graph_feature() you will need to install the graphviz library.
EntitySet.plot
featuretools.graph_feature()
Conda users:
conda install python-graphviz
Ubuntu:
sudo apt-get install graphviz pip install graphviz
Mac OS:
brew install graphviz pip install graphviz
Windows:
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.