tabensemb.data.utils.OrdinalEncoder#

class tabensemb.data.utils.OrdinalEncoder[source]#

Bases: object

An ordinal encoder for categorical features that better supports pd.DataFrame even with missing columns. It supports np.ndarray when calling transform() or inverse_transform(), but does not support fitting on a np.ndarray because it is designed for dataframes. It can also identify a miss-calling of transform() and inverse_transform() (calling transform on transformed dataframe, and vice versa), and return the input dataframe directly. But the functionality won’t work if the dataframe to be transformed/inverse-transformed only contains categorical features whose categories before encoding are all integers.

Methods

__init__()[source]#

fit(df)

Fit the ordinal encoder.

inverse_transform(df)

Inverse ordinal-encoding categorical features.

transform(df)

Ordinal-encoding categorical features.

_inverse_transform(df)

_transform(df)

_transform_or_inverse_transform(df, transform)

Automatically distinguish transform/inverse-transform and pd.DataFrame/np.ndarray.