Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Retorne um novo DataFrame com linhas duplicadas removidas, opcionalmente considerando apenas determinadas colunas.
Sintaxe
dropDuplicates(subset: Optional[List[str]] = None)
Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
subset |
lista de nomes de coluna, opcional | Lista de colunas a serem usadas para comparação duplicada (todas as colunas padrão). |
Devoluções
DataFrame: DataFrame sem duplicatas.
Observações
Para um DataFrame de lote estático, ele apenas descarta linhas duplicadas. Para um DataFrame de streaming, ele manterá todos os dados entre gatilhos como estado intermediário para remover linhas duplicadas. Você pode usar withWatermark para limitar a latência dos dados duplicados e o sistema limitará adequadamente o estado. Além disso, os dados mais antigos que a marca d'água serão descartados para evitar qualquer possibilidade de duplicatas.
Exemplos
from pyspark.sql import Row
df = spark.createDataFrame([
Row(name='Alice', age=5, height=80),
Row(name='Alice', age=5, height=80),
Row(name='Alice', age=10, height=80)
])
df.dropDuplicates().show()
# +-----+---+------+
# | name|age|height|
# +-----+---+------+
# |Alice| 5| 80|
# |Alice| 10| 80|
# +-----+---+------+
df.dropDuplicates(['name', 'height']).show()
# +-----+---+------+
# | name|age|height|
# +-----+---+------+
# |Alice| 5| 80|
# +-----+---+------+