IniziaInizia gratis

Codifiche categoriche

Un collega ha convertito le colonne nel dataset del credito in valori numerici usando LabelEncoder(). Ne ha lasciata fuori una: credit_history, che registra la storia creditizia del richiedente. Vuoi creare due versioni del dataset: una userà LabelEncoder() e l’altra la one-hot encoding, per confronto. La matrice delle feature è disponibile come credit. Hai LabelEncoder() già caricato e pandas come pd.

Questo esercizio fa parte del corso

Progettare workflow di Machine Learning in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Codifica credit_history usando LabelEncoder().
  • Concatena il risultato al frame originale.
  • Crea un nuovo data frame concatenando le variabili fittizie della one-hot encoding al frame originale.
  • Conferma che la one-hot encoding produce più colonne rispetto alla label encoding.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Create numeric encoding for credit_history
credit_history_num = ____.____(
  credit[____])

# Create a new feature matrix including the numeric encoding
X_num = pd.concat([X, pd.Series(____)], ____)

# Create new feature matrix with dummies for credit_history
X_hot = pd.concat(
  [X, ____.____(credit[____])], ____)

# Compare the number of features of the resulting DataFrames
print(X_hot.shape[____] > X_num.shape[____])
Modifica ed esegui il codice