emrpy.ml

emrpy.ml.encode_cats_pandas(train_df, cat_cols, test_df=None)

Encode categorical columns with handling for unknown and missing values.

Applies an OrdinalEncoder to the specified columns in a training DataFrame, then transforms an optional test DataFrame using the same encoder settings.

Return type:

Tuple[DataFrame, Optional[DataFrame], OrdinalEncoder]

Parameters:

train_dfpandas.DataFrame

DataFrame containing the training data with categorical columns to encode.

cat_colslist[str]

Names of the categorical columns to encode.

test_dfpandas.DataFrame, optional (default=None)

Optional DataFrame containing the same categorical columns to transform.

Returns:

: tuple[pandas.DataFrame, pandas.DataFrame or None, OrdinalEncoder]

  • Encoded copy of train_df with specified columns replaced by integer codes.

  • Encoded copy of test_df, or None if no test DataFrame was provided.

  • The fitted OrdinalEncoder instance for use on new data.

Examples:

>>> import pandas as pd
>>> from emrpy.ml.encoders import encode_cats_pandas
>>> df_train = pd.DataFrame({"color": ["red", "blue", None]})
>>> df_test  = pd.DataFrame({"color": ["blue", "yellow", None]})
>>> train_enc, test_enc, encoder = encode_cats_pandas(df_train, ["color"], df_test)
>>> train_enc["color"].tolist()
[0, 1, -1]
>>> test_enc["color"].tolist()
[1, -2, -1]

Modules

encoders

Machine Learning Encoding Utilities