sortWithinPartitions

Retourne un nouveau DataFrame avec chaque partition triée par la ou les colonnes spécifiées.

Syntaxe

sortWithinPartitions(*cols: Union[int, str, Column, List[Union[int, str, Column]]], **kwargs: Any)

Paramètres

Paramètre Type Description
cols int, str, list ou Column, facultatif liste des noms de colonnes ou des ordinals de colonne à trier.
ascending bool ou list, facultatif, valeur true par défaut booléen ou liste de booléen. Tri croissant et décroissant. Spécifiez la liste pour plusieurs ordres de tri. Si une liste est spécifiée, la longueur de la liste doit être égale à la longueur du cols.

Retours

DataFrame: DataFrame trié par partitions.

Remarques

Un ordinal de colonne commence à partir de 1, qui est différent de celui basé sur __getitem__0. Si un ordinal de colonne est négatif, cela signifie un tri décroissant.

Exemples

from pyspark.sql import functions as sf
df = spark.createDataFrame([(2, "Alice"), (5, "Bob")], schema=["age", "name"])
df.sortWithinPartitions("age", ascending=False)
# DataFrame[age: bigint, name: string]

df.coalesce(1).sortWithinPartitions(1).show()
# +---+-----+
# |age| name|
# +---+-----+
# |  2|Alice|
# |  5|  Bob|
# +---+-----+

df.coalesce(1).sortWithinPartitions(-1).show()
# +---+-----+
# |age| name|
# +---+-----+
# |  5|  Bob|
# |  2|Alice|
# +---+-----+