Compartilhar via


Agrupar valores categóricos

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.

Agrupa dados de várias categorias em uma nova categoria

Categoria: Transformação/manipulação de dados

Observação

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

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 Valores Categóricos de Grupo no Machine Learning Studio (clássico) para criar uma tabela de lookup in-loque.

O uso típico para agrupar valores categóricos é mesclar vários valores de cadeia de caracteres em um único novo nível. Por exemplo, você pode atribuir códigos postais individuais em uma região a um único código regional ou agrupar vários produtos em uma categoria.

Para usar este módulo, digite os valores de lookup que deseja usar e mapeie os valores existentes para os valores de substituição. Você pode criar grupos somente para colunas categóricas, não para colunas de tipo numérico ou colunas designadas como rótulos ou recursos.

Todos os valores de coluna que não são explicitamente mapeados para um novo nível são atribuídos a um nível padrão. Por exemplo, se você não mapeou todos os códigos postais individuais, eles serão agrupados em um nível para valores não mapeados, que você pode nomear Desconhecido.

Observação

No máximo 20 novos níveis podem ser criados, incluindo o nível padrão. Se você precisar de mais valores ou precisar definir mapeamentos dinamicamente, recomendamos usar o script R personalizado no módulo Executar Script R . Ou, use SQL instruções no módulo Aplicar SQL Transformation.

Como usar valores categóricos de grupo

Recomendamos que você prepare a lista de valores existentes e as novas categorias com antecedência. Para cada categoria, você deve preparar um novo nome de categoria e uma lista separada por vírgulas de valores a incluir na categoria.

  1. Adicione o módulo Valores Categóricos de Grupo ao seu experimento. Você pode encontrar o módulo em Transformação de Dados, Manipulação.

  2. Conexão um conjuntos de dados que tem os valores que você deseja transformar.

  3. No painel Propriedades de Valores Categóricos de Grupo, use o Seletor de Coluna para escolher a coluna que tem os níveis que você deseja reduzir.

    • Recomendamos que você clique em BEGIN WITHe NO COLUMNS para iniciar e, em seguida, adicione colunas por nome. Caso contrário, muitas colunas podem ser adicionadas como candidatos, levando a um erro.

    • A coluna deve ser uma coluna categórica. Se não estiver, adicione Editar Metadados upstream e altere o tipo de coluna.

    • Certifique-se de remover da entrada quaisquer colunas às quais a substituição de cadeia de caracteres não deve ser aplicada.

  4. Para o Modo de saída, indique se você deseja apenas a saída dos novos níveis ou adendo as alterações para ver a coluna original, com as substituições lado a lado.

    O padrão, ResultOnly, mostra apenas os novos valores. A opção Inplace substitui os valores de coluna existentes com os novos níveis.

  5. Em Nome de nível padrão, digite um valor de cadeia de caracteres a ser usado como a substituição de todos os valores que não são mapeados explicitamente. Você pode usar algo como "Desconhecido" ou "Padrão".

    Observação

    Esse valor de nível padrão é aplicado a todos os valores que não podem ser mapeados. Se você acidentalmente incluísse colunas que não pretendia mapear, o valor seria aplicado a todos os valores nas colunas. Portanto, verifique se a seleção de coluna é precisa antes do processamento.

  6. Para Novo número de níveis, digite um número que indica o número total de novas categorias (níveis), incluindo o nível padrão para valores não mapeados.

  7. Em Nome do novo nível 1, forneça o novo nome de grupo para a primeira categoria.

  8. Na caixa de texto que segue imediatamente, lista separada por vírgulas de níveis antigos para mapear para o novo nível 1, digite ou colar uma lista completa de todos os valores a mapear para o novo nível. Caracteres curinga e expressões regulares não são permitidos.

  9. Continue digitando novos nomes de nível e digite ou colar valores que devem ser mapeados para o novo nível.

    Recomendamos que você salve sua lista de valores em um arquivo separado enquanto está trabalhando. Se você alterar o número de níveis, todas as cadeias de caracteres que você digitou anteriormente serão removidas e você deverá começar de novo.

    No entanto, se você estiver editando um módulo que foi salvo anteriormente, poderá reverter para as configurações originais.

  10. Execute o experimento.

Resultados

Para exibir os resultados, clique com o botão direito do mouse no módulo Valores Categóricos de Grupo, selecione Conjunto de dados resultados e clique em Visualizar.

Exemplos

Para ver exemplos de aprendizado de máquina em ação, consulte o Galeria de IA do Azure.

Você também pode experimentar este módulo por conta própria, usando um pequeno conjunto de dados com algumas variáveis de cadeia de caracteres que podem ser agrupadas facilmente, como o conjunto de dados Preço de automóvel fornecido no Machine Learning Studio (clássico).

Vamos supor que você queira agrupar carros no conjunto de dados Preço de automóvel por tamanho do motor, usando o número de cilindros. Em vez de muitos tamanhos de mecanismo diferentes, você criará os novos níveis, "grande", "pequeno" e "outros", da seguinte maneira:

  • Motores grandes: seis cilindros ou mais
  • Motores pequenos: dois ou quatro cilindros
  • Outro: qualquer outra coisa
  1. Adicione o módulo Selecionar Colunas no Conjuntos de Dados e selecione apenas a num-of-cylinders coluna .
  2. Adicione o módulo Editar Metadados e altere a coluna num-of-cylinders para Categórico.
  3. Adicione o módulo Valores Categóricos de Grupo e conecte o conjunto de dados modificado.
  4. Em Nome de nível padrão, digite other. Você não precisa fornecer valores para esse nível.
  5. Em Nome do novo nível 1, digite big. Na lista de níveis antigos a mapear para o nível 1, colar em six, eight, twelve.
  6. Em Nome do novo nível 2, digite small. Para os valores mapeados, colar em two, four.
  7. Execute o experimento.
  8. Ao visualizar os resultados, você percebe que o conjuntos de dados original tinha alguns tamanhos de mecanismo ímpares que você não tinha em conta, como five e three. Todos esses itens são mapeados para o other nível .

Observações técnicas

Esta seção contém detalhes de implementação, dicas e respostas para perguntas frequentes.

  • Você pode encontrar a mensagem de erro "A coluna com o nome "<columnname>" não está em uma categoria permitida."

    Essa mensagem indica que a coluna selecionada não é uma coluna categórica. Você pode marcar a coluna como Categorical usando Editar Metadados ou selecionar uma coluna diferente que contenha valores de categoria apropriados.

Entradas esperadas

Nome Tipo Descrição
Dataset Tabela de Dados Dados a serem agrupados

Parâmetros do módulo

Nome Intervalo Type Padrão Descrição
Colunas Selecionadas any ColumnSelection CategoricalAll Selecione as colunas que serão agrupadas.
Modo de saída any OutputTo ResultOnly Especifique como os rótulos de categoria devem ser gerados.
Nome do nível padrão any Cadeia de caracteres Indica o nível padrão a ser usado se não houver correspondência de mapeamento.
Novo número de níveis Lista Número de grupos Especifique o número de níveis após o agrupamento dos valores, incluindo o nível padrão.

Saída

Nome Tipo Descrição
Conjunto de dados de resultados Tabela de Dados Dados agrupados

Confira também

Manipulação
Transformação de dados
Lista de Módulo A-Z