ComeçarComece de graça

Codificação ordinal de uma coluna categórica

A imputação de valores categóricos envolve algumas etapas extras em relação à imputação de valores numéricos. Primeiro, é preciso convertê-los em valores numéricos, pois operações estatísticas não podem ser feitas em strings.

Você usará o conjunto de dados de perfil de usuários, que contém preferências e escolhas de clientes registradas por um restaurante. Ele contém apenas variáveis categóricas. Neste exercício, você vai converter a coluna categórica 'ambience' em numérica usando OrdinalEncoder do sklearn. O DataFrame já foi carregado como users. A função OrdinalEncoder() também foi carregada.

Os métodos head() e tail() do DataFrame users foram exibidos para você.

Este exercício faz parte do curso

Lidando com Dados Ausentes em Python

Ver curso

Instruções do exercício

  • Crie o objeto de codificador ordinal e atribua a ambience_ord_enc.
  • Selecione os valores não ausentes da coluna 'ambience' em users.
  • Remodele ambience_not_null para o formato (-1, 1).
  • Substitua os valores não ausentes de ambience por seus valores codificados.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Set col_name to 'ambience'
col_name = 'ambience'
# Create Ordinal encoder
ambience_ord_enc = ___

# Select non-null values of ambience column in users
ambience = users[col_name]
ambience_not_null = ___

# Reshape ambience_not_null to shape (-1, 1)
reshaped_vals = ___

# Select the non-null values for the column col_name in users and store the encoded values
encoded_vals = ambience_ord_enc.fit_transform(reshaped_vals)
users.loc[___, col_name] = np.squeeze(encoded_vals)
Editar e executar o código