{"id":8988,"library":"featuretools","title":"Featuretools","description":"Featuretools is an open-source Python library for automated feature engineering. It excels at transforming temporal and relational datasets into feature matrices suitable for machine learning. The library, currently at version 1.31.0, is actively maintained by Alteryx and follows a frequent release cadence, often introducing new features and improvements.","status":"active","version":"1.31.0","language":"python","source_language":"en","source_url":"https://github.com/alteryx/featuretools","tags":["feature engineering","machine learning","data science","etl","automated ml"],"install":[{"cmd":"pip install featuretools","lang":"bash","label":"PyPI"},{"cmd":"conda install -c conda-forge featuretools","lang":"bash","label":"Conda-forge"}],"dependencies":[{"reason":"Required for parallel computation when `n_jobs` > 1 in `calculate_feature_matrix`.","package":"dask","optional":true},{"reason":"Required for plotting EntitySets or feature lineage graphs (`EntitySet.plot` or `featuretools.graph_feature`).","package":"graphviz","optional":true}],"imports":[{"wrong":"import featuretools","symbol":"featuretools","correct":"import featuretools"}],"quickstart":{"code":"import featuretools as ft\nimport pandas as pd\n\n# Load mock customer data into an EntitySet\nes = ft.demo.load_mock_customer(return_entityset=True)\n\n# Define target dataframe for feature engineering\ntarget_dataframe_name = \"customers\"\n\n# Run Deep Feature Synthesis (DFS)\nfeature_matrix, feature_defs = ft.dfs(\n    entityset=es,\n    target_dataframe_name=target_dataframe_name,\n    agg_primitives=[\"count\", \"sum\", \"mean\"],\n    trans_primitives=[\"day\", \"month\", \"weekday\"]\n)\n\nprint(feature_matrix.head())","lang":"python","description":"This quickstart demonstrates how to load a multi-table dataset into an EntitySet, define a target dataframe, and then use Deep Feature Synthesis (DFS) to automatically generate a rich set of features. It utilizes built-in aggregation and transform primitives to create new meaningful features for a machine learning task."},"warnings":[{"fix":"Convert Dask or PySpark DataFrames to pandas DataFrames before creating an EntitySet. For Dask, use `.compute()` to get a pandas DataFrame.","message":"As of Featuretools v1.31.0, EntitySets can no longer be created directly from Dask or PySpark DataFrames. This functionality has been removed. Users must convert their Dask/PySpark DataFrames to pandas DataFrames first.","severity":"breaking","affected_versions":">=1.31.0"},{"fix":"All CLI functionalities must now be performed programmatically within Python scripts.","message":"The `featuretools` command-line interface (CLI) has been completely removed in version 1.31.0.","severity":"breaking","affected_versions":">=1.31.0"},{"fix":"Refer to the 'Transitioning to Featuretools Version 1.0' guide for detailed migration steps. Key changes include using `Woodwork DataFrames` and accessing column metadata via the `.ww` accessor on DataFrames within an EntitySet.","message":"Featuretools v1.0.0 introduced significant breaking changes by replacing its legacy custom typing system with Woodwork. The `Entity` and `Variable` classes were removed, and `EntitySet` creation and primitive definitions changed. Columns now use Woodwork `LogicalType` and `semantic_tags` for type information.","severity":"breaking","affected_versions":">=1.0.0"},{"fix":"Install Dask with `pip install \"featuretools[dask]\"` or `pip install dask[dataframe]` before running parallel computations.","message":"Dask is now an optional dependency. If you use `calculate_feature_matrix` with `n_jobs` set to anything other than 1 (to enable parallel processing), you must explicitly install Dask.","severity":"gotcha","affected_versions":">=1.31.0"}],"env_vars":null,"search_vec":"'1.31.0':34 'activ':36 'alteryx':39 'autom':11,59 'cadenc':45 'current':31 'data':56 'dataset':21 'engin':13,53 'etl':58 'excel':15 'featur':12,23,49,52 'featuretool':1,2 'follow':41 'frequent':43 'improv':51 'introduc':47 'learn':28,55 'librari':9,30 'machin':27,54 'maintain':37 'matric':24 'ml':60 'new':48 'often':46 'open':6 'open-sourc':5 'python':8 'relat':20 'releas':44 'scienc':57 'sourc':7 'suitabl':25 'tempor':18 'transform':17 'version':33","created_at":"2026-04-16T18:47:53.123428+00:00","updated_at":"2026-04-16T18:47:53.123428+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\n  File \"/tmp/tmp26o3f5rk/venv/lib/python3.12/site-packages/featuretools/__init__.py\", line 4, in <module>\n    from featuretools.entityset.api import *\n  File \"/tmp/tmp26o3f5rk/venv/lib/python3.12/site-packages/featuretools/ent"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"1.31.0","cli_name":"","cli_version":null,"type":"library","homepage":"https://www.featuretools.com","github":"https://github.com/alteryx/featuretools","docs":"https://featuretools.alteryx.com","changelog":"https://featuretools.alteryx.com/en/latest/release_notes.html","pypi":"https://pypi.org/project/featuretools/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["data","ai-ml"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}