loo_encoder

Leave one out encoding of categorical features


License
GPL-3.0
Install
pip install loo_encoder==0.0.9

Documentation

leave-one-out-encoder

Leave one out coding for categorical features

See the source for this project here: https://github.com/welfare520/leave-one-out-encoder.

Getting Started

Installing

$ pip install loo_encoder

Example

Fit encoder according to X and y, and then transform it.

from loo_encoder.encoder import LeaveOneOutEncoder
import pandas as pd
import numpy as np


enc = LeaveOneOutEncoder(cols=['gender', 'country'], handle_unknown='impute', sigma=0.02, random_state=42)

X = pd.DataFrame(
    {
        "gender": ["male", "male", "female", "male"],
        "country": ["Germany", "USA", "USA", "UK"],
        "clicks": [10, 33, 47, 21]
    }
)

y = pd.Series([150, 250, 300, 100], name="orders")

df_train = enc.fit_transform(X=X, y=y, sample_weight=X['clicks'])

Perform the transformation to new categorical data.

X_val = pd.DataFrame(
    {
        "gender": ["unknown", "male", "female", "male"],
        "country": ["Germany", "USA", "Germany", "Japan"]
    }
)

df_test = enc.transform(X=X_val)