odstraněníDuplicit

Vrátí nový datový rámec s odstraněnými duplicitními řádky, volitelně pouze s ohledem na určité sloupce.

Syntaxe

dropDuplicates(subset: Optional[List[str]] = None)

Parametry

Parameter Typ Description
subset seznam názvů sloupců, volitelné Seznamsloupcůch

Návraty

DataFrame: Datový rámec bez duplicit.

Poznámky

U statického dávkového datového rámce se pouze zahodí duplicitní řádky. U streamovaného datového rámce zachová všechna data napříč triggery jako průběžný stav, aby se vyřadily duplicitní řádky. Můžete použít withWatermark k omezení zpoždění duplicitních dat a systém odpovídajícím způsobem omezí stav. Kromě toho se data starší než vodoznak zahodí, aby se zabránilo jakékoli možnosti duplicit.

Příklady

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|
# +-----+---+------+