Método duplicates()

Detecta se há valores duplicados ou linhas inteiras duplicadas em um dataframe.

Sintaxe

nome_dataframe.duplicates(on = ["coluna_chave", "...n"], add_groups = True|False)

Parâmetros

Nome Descrição
on = ["coluna_chave", "...n"]

Uma ou mais colunas-chave para testar se há duplicidades.

Se você testar mais de uma coluna, as linhas identificadas como duplicidades exigem valores idênticos em todas as colunas especificadas.

Se você testar todas as colunas de um dataframe, as linhas identificadas como duplicidades devem ser inteiramente idênticas.

As colunas-chave ficam na posição mais à esquerda no dataframe de saída.

add_groups = True | False

opcional

  • True incluir a coluna Grupo no dataframe de saída
  • False não incluir a coluna Grupo no dataframe de saída

A coluna Grupo atribui um número incrementado sequencialmente a cada grupo único de duplicidades.

Dica

A capacidade de fazer referência a grupos de duplicidades por número pode ser útil quando você analisa dados no dataframe de saída.

Se o parâmetro for omitido, a coluna Grupo não será incluída.

Retorna

Dataframe do HCL.

Exemplos

Testar se há valores duplicados em uma coluna

No dataframe invoices, o exemplo a seguir:

  • testa se há valores duplicados na coluna Invoice_Number
  • gera todas as linhas que contêm números de fatura duplicados no dataframe inv_num_duplicates
inv_num_duplicates = invoices.duplicates(columns = ["Invoice_Number"])

O segundo exemplo faz o mesmo, mas atribui um número incrementado sequencialmente a cada grupo único de duplicidades.

inv_num_duplicates_group_id = invoices.duplicates(on = ["Invoice_Number"], add_groups = True)

Testar se há valores duplicados em duas ou mais colunas combinadas

No dataframe invoices, o exemplo a seguir:

  • testa se há combinações de valores duplicadas nas colunas Invoice_Number e Vendor_Number
  • gera todas as linhas que contêm o mesmo número de fatura e de fornecedor no dataframe invoice_vendor_duplicates

A diferença entre esse teste e o teste anterior é que um número de fatura idêntico de dois fornecedores diferentes não é relatado como um falso positivo.

invoice_vendor_duplicates = invoices.duplicates(columns = ["Invoice_Number", "Vendor_Number"])

Testar se há linhas duplicadas

No dataframe inventory, o exemplo a seguir:

  • testa se há valores duplicados em todas as colunas
  • gera todas as linhas inteiramente idênticas no dataframe inventory_duplicates
inventory_duplicates = inventory.duplicates(columns = ["ProdNum", "ProdClass", "Location", "ProdDesc", "ProdStatus", "UnitCost", "CostDate", "SalePrice", "PriceDate"])