← retour aux snippets

sklearn: OneHotEncoder & OrdinalEncoder

Encoder des variables catégorielles (one-hot ou ordinale).

objectif

Encoder des variables catégorielles (one-hot ou ordinale).

code minimal

from sklearn.preprocessing import OneHotEncoder, OrdinalEncoder
import numpy as np

X = np.array([["FR"],["DE"],["FR"]], dtype=object)
oh = OneHotEncoder(sparse_output=False).fit_transform(X)
print(oh.tolist())

utilisation

import numpy as np
oe = OrdinalEncoder().fit_transform(X)
print(oe.ravel().tolist())

variante(s) utile(s)

from sklearn.preprocessing import OneHotEncoder
enc = OneHotEncoder(handle_unknown="ignore").fit([["a"],["b"]])
print(enc.transform([["c"]]).shape[1] >= 2)

notes

  • handle_unknown='ignore' évite les erreurs en prod.