Skip to main content

Feature engineering package that follows sklearn functionality

Project description

Feature Engine

Feature Engine is a python library that contains several transformers to engineer features for use in machine learning models. The transformers follow scikit-learn like functionality. They first learn the imputing or encoding methods from the training set, and subsequently transform the dataset. Currently the trasformers include functionality for:

  • Missing value imputation
  • Categorical variable encoding
  • Outlier removal
  • Discretisation
  • Numerical Variable Transformation

Important Links

Documentation: http://feature-engine.readthedocs.io

Imputing Methods

  • MeanMedianImputer
  • RandomSampleImputer
  • EndTailImputer
  • AddNaNBinaryImputer
  • CategoricalVariableImputer
  • FrequentCategoryImputer
  • ArbitraryNumberImputer

Encoding Methods

  • CountFrequencyCategoricalEncoder
  • OrdinalCategoricalEncoder
  • MeanCategoricalEncoder
  • WoERatioCategoricalEncoder
  • OneHotCategoricalEncoder
  • RareLabelCategoricalEncoder

Outlier Handling methods

  • Windsorizer
  • ArbitraryOutlierCapper

Discretisation methods

  • EqualFrequencyDiscretiser
  • EqualWidthDiscretiser
  • DecisionTreeDiscretiser

Variable Transformation methods

  • LogTransformer
  • ReciprocalTransformer
  • ExponentialTransformer
  • BoxCoxTransformer

Installing

pip install feature_engine

or

git clone https://github.com/solegalli/feature_engine.git

Usage

from feature_engine.categorical_encoders import RareLabelEncoder

rare_encoder = RareLabelEncoder(tol = 0.05, n_categories=5)
rare_encoder.fit(data, variables = ['Cabin', 'Age'])
data_encoded = rare_encoder.transform(data)

See more usage examples in the jupyter notebooks in the example section

Examples

You can find jupyter notebooks in the examples folder, with directions on how to use this package and its multiple transformers.

License

BSD 3-Clause

Authors

References

Most of the engineering and encoding functionality is inspired by this series of articles from the 2009 KDD competition

To learn more about the rationale, functionality, pros and cos of each imputer, encoder and transformer, refer to the Feature Engineering Online Course

Project details


Download files

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

Source Distribution

feature_engine-0.1.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

feature_engine-0.1-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file feature_engine-0.1.tar.gz.

File metadata

  • Download URL: feature_engine-0.1.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.3

File hashes

Hashes for feature_engine-0.1.tar.gz
Algorithm Hash digest
SHA256 cd16b71526c6144eaf1a4aa3f87e361e874a85a1c46be8e406504a7ad4bf81a9
MD5 faf1805373070eb50d8746c447da86b8
BLAKE2b-256 eb08f459db75cabbd962cd9fac0433701d9ce9f86cbb10f6229712188771e925

See more details on using hashes here.

File details

Details for the file feature_engine-0.1-py3-none-any.whl.

File metadata

  • Download URL: feature_engine-0.1-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.3

File hashes

Hashes for feature_engine-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 33cc9f4346cb44c62719393d94beb434b7fcbf5c86367a3455266b7b671a38f1
MD5 a5f35c6f5e417316b3daed9bd699a8da
BLAKE2b-256 4240e33c1e25d9563f4154afd9d27cdbad414904fb48b086a24aa8908ad169dd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page