Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Devolva um novo DataFrame com as linhas duplicadas removidas, considerando opcionalmente apenas certas colunas.
Sintaxe
dropDuplicates(subset: Optional[List[str]] = None)
Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
subset |
Lista de nomes das colunas, opcional | Lista de colunas a usar para comparação duplicada (por defeito Todas as colunas). |
Devoluções
DataFrame: DataFrame sem duplicados.
Notes
Para um DataFrame em lote estático, simplesmente deixa cair linhas duplicadas. Para um DataFrame em streaming, mantém todos os dados entre triggers como estado intermédio para eliminar linhas duplicadas. Podes usar withWatermark para limitar o quão tarde os dados duplicados podem estar e o sistema limitará o estado em conformidade. Além disso, dados mais antigos do que a marca de água serão eliminados para evitar qualquer possibilidade de duplicados.
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|
# +-----+---+------+