Remover Linhas Duplicadas

Remove as linhas duplicadas de um conjunto de dados

Categoria: Transformação de Dados / Manipulação

Nota

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

Este conteúdo diz respeito apenas ao Studio (clássico). Módulos semelhantes de arrasto e queda foram adicionados ao designer de Aprendizagem automática Azure. Saiba mais neste artigo comparando as duas versões.

Visão geral do módulo

Este artigo descreve como utilizar o módulo Remove Duplicate Rows no Azure Machine Learning Studio (clássico), para remover potenciais duplicados de um conjunto de dados.

Por exemplo, assuma que os seus dados se parecem com os seguintes, e representa vários registos para pacientes.

PatientID Iniciais Sexo Idade Admitido
1 F.M. M 53 Jan
2 F.A.M. M 53 Jan
3 F.A.M. M 24 Jan
3 F.M. M 24 Feb
4 F.M. M 23 Feb
F.M. M 23
5 F.A.M. M 53

Claramente, este exemplo tem várias colunas com dados potencialmente duplicados. Se são realmente duplicados depende do seu conhecimento dos dados.

  • Por exemplo, pode saber que muitos pacientes têm o mesmo nome. Não eliminaria duplicados usando colunas de nome, apenas a coluna de identificação. Desta forma, apenas as linhas com valores de ID duplicados são filtradas, independentemente de os pacientes terem ou não o mesmo nome.

  • Em alternativa, pode decidir permitir duplicados no campo ID, e usar outra combinação de arquivos para encontrar registos únicos, como o primeiro nome, apelido, idade e sexo.

Para definir os critérios para se uma linha é duplicada ou não, especifique uma única coluna ou um conjunto de colunas para utilizar como teclas. Duas linhas são consideradas duplicadas apenas quando os valores em todas as colunas-chave são iguais.

Quando executam o módulo, cria um conjunto de dados de candidatos e devolve um conjunto de linhas que não têm duplicados em todo o conjunto de colunas especificadas.

Importante

O conjunto de dados de origem não é alterado; este módulo cria um novo conjunto de dados que é filtrado para excluir duplicados, com base nos critérios especificados.

Como utilizar remover linhas duplicadas

  1. Adicione o módulo à sua experiência. Pode encontrar o módulo Remover Linhas Duplicadas em Transformação de Dados, Manipulação.

  2. Ligue o conjunto de dados que pretende verificar se há linhas duplicadas.

  3. No painel Propriedades, sob a expressão do filtro de seleção de colunas Chave, clique no seletor de colunas de lançamento, para escolher colunas a utilizar na identificação de duplicados.

    Neste contexto, Key não significa um identificador único. Todas as colunas que selecionar utilizando o Seletor de Colunas são designadas como colunas-chave. Todas as colunas não selecionadas são consideradas colunas não-chave. A combinação de colunas que seleciona como teclas determina a singularidade dos registos. (Pense nisso como uma declaração SQL que usa múltiplas uniões de igualdade.)

    Exemplos:

    • "Quero garantir que os IDs são únicos": Escolha apenas a coluna ID.
    • "Quero garantir que a combinação de nome próprio, apelido e ID é única": Selecione as três colunas.
  4. Utilize a primeira caixa de verificação de linha duplicada para indicar qual a linha a devolver quando forem encontradas duplicações:

    • Se selecionada, a primeira linha é devolvida e outras descartadas.
    • Se desmarcar esta opção, a última linha duplicada é mantida nos resultados e outras são descartadas.

    Consulte a secção de notas técnicas para obter informações sobre a forma como os valores de falha são tratados.

  5. Executar a experiência, ou clicar no módulo e selecionar Run Selected.

  6. Para rever os resultados, clique no módulo com direito, selecione Conjunto de dados de Resultadose clique em Visualizar.

Dica

Se os resultados forem difíceis de entender, ou se pretender excluir algumas colunas de consideração, pode remover colunas utilizando o módulo Select Columns in Dataset.

Exemplos

Para ver exemplos de como este módulo é usado, consulte a Galeria Azure AI:

  • Deteção do cancro da mama: Remover Linhas Duplicadas é utilizado para consolidar os conjuntos de dados de treino e teste após a adição de colunas de recursos.

  • Recomendação do filme: Usa removem linhas duplicadas para garantir que existe apenas uma classificação de utilizador por filme.

  • Análise de sentimento do Twitter: Remove Duplicate Rows é aplicado apenas às colunas de ID e popularidade, para garantir que existe apenas um valor de classificação ordinal por filme. Por outras palavras, um filme não pode ser simultaneamente 1º e 3º, pelo que um único valor é usado mesmo que os utilizadores classificassem o filme de forma diferente.

Notas técnicas

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

Detalhes de implementação

O módulo funciona rodando através de todas as linhas do conjunto de dados de entrada. Recolhe num conjunto de dados de saída de candidatos todas as linhas onde a combinação única de valores de coluna-chave aparece pela primeira vez.

O tipo de matriz de coluna é preservado independentemente dos resultados da filtragem de linha. Não é possível forçar a matriz a um determinado tipo de dados filtrando valores inválidos; o tipo de matriz de coluna baseia-se em todos os valores da coluna. Esta restrição também se aplica ao filtrar valores em falta.

O algoritmo usado para comparar valores de dados é forçado a haxixe.

Valores em falta

O conjunto de dados de entrada pode ter valores em falta em colunas e colunas-chave não-chave. Estas regras aplicam-se aos valores em falta:

  • Um valor em falta é considerado um valor válido em colunas-chave. Os valores em falta podem estar presentes em ambas as teclas.

  • Num conjunto de dados escasso, o valor em falta só é considerado igual se for igual à representação padrão de um valor escasso.

  • Nas colunas-chave, um valor em falta é considerado igual a outros valores em falta, mas não igual a valores não em falta.

Entrada esperada

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

Parâmetros do módulo

Nome Intervalo Tipo Predefinição Descrição
Expressão do filtro de seleção de colunas de chave qualquer Seleção de Colunas Escolha as colunas-chave a utilizar quando procurar duplicados.
Reter primeira linha duplicada qualquer Booleano true Indicar se deve manter a primeira linha de um conjunto de duplicados e descartar outros. Se falso, a última linha duplicada encontrada é mantida.

Saída

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

Exceções

Exceção Descrição
Erro 0003 Uma exceção ocorre se um ou mais dos conjuntos de dados de entrada forem nulos ou vazios.
Erro 0020 Uma exceção ocorre se o número de colunas em alguns dos conjuntos de dados passados para o módulo for demasiado pequeno.
Erro 0017 Uma exceção ocorre se uma ou mais colunas especificadas tiverem um tipo que não é suportado pelo módulo atual.

Para obter uma lista de erros específicos dos módulos Studio (clássicos), consulte códigos de erro de aprendizagem automática.

Para obter uma lista de exceções da API, consulte códigos de erro da API de aprendizagem automática.

Ver também

Manipulação
Lista de Módulos A-Z