Substituir valores discretos

Importante

O suporte para o Machine Learning Studio (clássico) terminará em 31 de agosto de 2024. É recomendável fazer a transição para o Azure Machine Learning até essa data.

A partir de 1º de dezembro de 2021, você não poderá criar recursos do Machine Learning Studio (clássico). Até 31 de agosto de 2024, você pode continuar usando os recursos existentes do Machine Learning Studio (clássico).

A documentação do ML Studio (clássico) está sendo desativada e pode não ser atualizada no futuro.

Substituir valores distintos de uma coluna com valores numéricos com base em outra coluna

Categoria: funções estatísticas

Observação

aplica-se a: somente Machine Learning Studio (clássico)

Módulos semelhantes do tipo "arrastar e soltar" estão disponíveis no designer do Azure Machine Learning.

Visão geral do módulo

este artigo descreve como usar o módulo substituir valores discretos no Machine Learning Studio (clássico), para gerar uma pontuação de probabilidade que pode ser usada para representar um valor discreto. Essa Pontuação pode ser útil para entender o valor das informações dos valores discretos.

Como funciona:

Você seleciona uma coluna que contém o valor discreto (ou categórica) e, em seguida, seleciona outra coluna a ser usada para referência.

Dependendo se a segunda coluna é categórica ou não categórica, o módulo computa um dos seguintes valores:

  • A probabilidade condicional para a segunda coluna, considerando os valores na primeira coluna.
  • A média e o desvio padrão para cada grupo de valores na primeira coluna.

O módulo gera um conjunto de resultados com as pontuações e uma função que você pode salvar e aplicar a outros conjuntos de resultados.

Como configurar substituir valores discretos

Dica

É recomendável trabalhar com apenas um par de colunas por vez. O módulo não gerará um erro se você selecionar várias colunas para analisar. No entanto, na prática, se você escolher várias colunas, elas serão correspondidas por uma heurística interna, não pela ordem de seleção.

Portanto, recomendamos que você selecione um único par de colunas a cada vez, uma para colunas discretas e outra para colunas de substituição.

Se você precisar gerar pontuações para várias colunas, use instâncias separadas de substituir valores discretos.

  1. Adicione o módulo substituir valores discretos ao seu experimento. você pode encontrar esse módulo no grupo de funções estatísticas na lista de itens de teste no Machine Learning Studio (clássico).

  2. Conexão um conjunto de dados que contém pelo menos uma coluna de dado categórico.

  3. Colunas discretas: clique em Iniciar seletor de coluna para escolher uma coluna que contenha valores discretos (ou categóricos).

    Todas as colunas discretas que você selecionar devem ser categóricas. Se você receber um erro, use o módulo Editar metadados para alterar o tipo de coluna.

  4. Colunas de substituição: clique em Iniciar seletor de coluna para escolher a coluna que contém os valores a serem usados na computação de uma pontuação de substituição.

    Se você selecionar várias colunas para colunas discretas, deverá escolher um número igual de colunas de substituição.

  5. Execute o experimento.

    Observação

    Você não pode escolher qual função estatística aplicar. O módulo calcula uma medida apropriada, com base no tipo de dados da coluna selecionada para a coluna de substituição.

Resultados

O módulo computa um dos seguintes valores para cada par de colunas:

  • Se a segunda coluna contiver valores categóricos, o módulo calculará a probabilidade condicional da segunda coluna, considerando os valores na primeira coluna.

    Por exemplo, suponha que você escolheu occupation no conjunto de censo como a coluna discreta e escolha gender como a coluna de substituição. A saída do módulo seria:

    P(gender | occupation)

  • Se a segunda coluna contiver valores não categóricos que possam ser convertidos em números (como valores numéricos ou boolianos não marcados como categóricos), o módulo produzirá a média e o desvio padrão para cada grupo de valores na primeira coluna.

    Por exemplo, suponha que você use occupation como a coluna discreta e a outra coluna é a coluna hours-per-week numérica. O módulo produziria esses novos valores:

    Mean(hours-per-week | occupation)

    Std-Dev(hours-per-week | occupation)

Além das pontuações de probabilidade, o módulo também gera um conjunto de resultados transformado. Nesse conjunto de resultados, a coluna selecionada como colunas de substituição é substituída por uma coluna que contém as pontuações computadas.

Dica

As colunas no conjunto de fonte de origem não são realmente alteradas ou excluídas pela operação; as colunas de pontuação são novas geradas pelo módulo e saídas em vez dos dados de origem.

Para exibir os valores de origem junto com as pontuações de probabilidade, use o módulo adicionar colunas .

Exemplos

O uso de substituir valores discretos pode ser ilustrado por alguns exemplos simples.

Exemplo 1 – substituir um valor categórico por uma pontuação de probabilidade

A tabela a seguir contém uma coluna categórica X e uma coluna Y com valores True/False que são tratados como valores categóricos. Quando você usa substituir valores discretos, ele calcula uma pontuação de probabilidade condicional para a probabilidade de Y especificado X, conforme mostrado na terceira coluna.

X Y P(Y|X)
Azul 0 P(Y=0|X=Blue) = 0.5
Azul 1 P(Y=1|X=Blue) = 0.5
Verde 0 P(Y=0|X=Green) = 2/3
Verde 0 P(Y=0|X=Green) = 2/3
Verde 1 P(Y=1|X=Green) = 1/3
Vermelho 0 P(Y=0|X=Red) = .75
Vermelho 0 P(Y=0|X=Red) = .75
Vermelho 1 P(Y=1|X=Red) = .25
Vermelho 0 P(Y=0|X=Red) = .75

Exemplo 2 – calcular a média e o desvio padrão com base em uma coluna não categórica

Quando a segunda coluna é numérica, substituir valores discretos calcula a média e o desvio padrão em vez de uma pontuação de probabilidade condicional.

O exemplo a seguir é baseado no conjunto de exemplos de preços automáticos , simplificado da seguinte maneira:

  • Um pequeno subconjunto de colunas foi selecionado.

  • Somente as 30 primeiras linhas foram extraídas, usando a opção Head do módulo partição e exemplo .

  • O módulo substituir valores discretos foi usado para calcular a média e o desvio padrão do peso de meio-fios do veículo. dada a coluna categórica, num-of-doors .

A tabela a seguir ilustra os resultados:

Corpo Número de portas Peso de meio-fio Média(Peso de meio-fio|Nº de PORTAS) Desvio padrão(peso de meio-fio|nº de portas)
padrão dois 2548 2429,785714 507,45699
padrão quatro 2337 2625,6 493,409877
padrão dois 2507 2429,785714 507,45699
turbo quatro 3086 2625,6 5 493,409877
padrão quatro 1989 2625,6 493,409877
turbo 2191
padrão quatro 2535 2625,6 493,409877

Você pode verificar a média de cada grupo de valores usando a AVERAGEIF função em Excel.

Exemplo 3-manipulando valores ausentes

Este exemplo demonstra como valores ausentes (nulos) se propagam para os resultados quando pontuações de probabilidade condicional são calculadas.

  • Se a coluna de valor discreto e a coluna de pesquisa de cálculo contiverem valores ausentes, eles serão propagados para a nova coluna.

  • Se a coluna de valor discreto contiver somente valores ausentes, o módulo não pode processar a coluna e uma mensagem de erro é exibida.

X Y P(Y|X)
1 True P(Y=true|X=1) = 1/2
1 Falso P(Y=false|X=1) = 1/2
2 True P(Y=true|X=2) = 1/3
2 Falso P(Y=false|X=2) = 1/3
2 Nulo P(Y=null|X=2) = null

Observações técnicas

  • Você deve garantir que quaisquer colunas discretas que você queira substituir sejam categóricas, ou o módulo retornará um erro. Para fazer isso, use o módulo Editar metadados .

  • Se a segunda coluna contiver valores Booleanos, os valores True-False serão processados como numérico com FALSE e TRUE equivalentes a 0 e 1, respectivamente.

  • A fórmula da coluna de desvio padrão calcula o desvio padrão de preenchimento. Portanto, N é usado no denominador em vez de (N-1).

  • Se a segunda coluna contiver dados não categóricos (valores numéricos ou boolianos), o módulo calculará a média e o desvio padrão de Y para o valor especificado de X.

    Ou seja, para cada linha no conjunto de linhas indexada por i :

    Mean(Y│X)i = Mean(Y│X = Xi)

    StdDev(Y│X)i = StdDev(Y│X = Xi)

  • Se a segunda coluna contém dados categóricos ou valores que não são numéricos nem boolianos, o módulo computa a probabilidade condicional de Y para o valor especificado de X.

  • Quaisquer valores boolianos na segunda coluna são processados como dados numéricos com FALSE e TRUE equivalentes a 0 e 1, respectivamente.

  • Se houver uma classe na coluna discreta, de modo que uma linha com valor ausente esteja presente na segunda coluna, a soma das probabilidades condicionais dentro da classe será menor que 1.

Entradas esperadas

Nome Tipo Descrição
Dataset Tabela de Dados Conjunto de dados de entrada

Parâmetros do módulo

Nome Intervalo Type Padrão Descrição
Colunas discretas Qualquer ColumnSelection Seleciona as colunas que contêm valores discretos
Colunas de substituição Qualquer ColumnSelection Seleciona as colunas que contêm os dados a serem usados no lugar dos valores discretos

Saídas

Nome Tipo Descrição
Conjunto de dados complementado Tabela de Dados Conjunto de dados com dados substituídos
Função de transformação Interface ITransform Definição da função de transformação, que pode ser aplicada a outros conjuntos de dados

Exceções

Exceção Descrição
Erro 0001 Ocorre uma exceção se uma ou mais das colunas especificadas do conjunto de dados não puder ser encontrada.
Erro 0003 Ocorrerá uma exceção se uma ou mais das entradas for nula ou estiver vazia.
Erro 0020 Ocorre uma exceção se o número de colunas em alguns dos conjuntos de dados transmitidos para o módulo for muito pequeno.
Erro 0021 Ocorre uma exceção se o número de linhas em alguns dos conjuntos de dados passados para o módulo for muito pequeno.
Erro 0017 Ocorre uma exceção se uma ou mais colunas especificadas tem um tipo que não é suportado pelo módulo atual.
Erro 0026 Ocorre uma exceção quando não são permitidas colunas com o mesmo nome.
Erro 0022 Ocorre uma exceção se o número de colunas selecionadas no conjunto de dados de entrada não for igual ao número esperado.

para obter uma lista de erros específicos para módulos do Studio (clássicos), consulte Machine Learning códigos de erro.

para obter uma lista de exceções de api, consulte Machine Learning códigos de erro da api REST.

Confira também

Funções estatísticas