Freigeben über


sortWithinPartitions

Gibt einen neuen DataFrame zurück, wobei jede Partition nach den angegebenen Spalten sortiert ist.

Syntax

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

Parameter

Parameter Typ Beschreibung
cols int, str, list oder Column, optional Liste der Spalten- oder Spaltennamen oder Spalten-Ordnungszahlen, nach der sortiert werden soll.
ascending bool or list, optional, default True Boolescher Wert oder eine boolesche Liste. Aufsteigend und absteigend sortieren. Geben Sie die Liste für mehrere Sortierreihenfolgen an. Wenn eine Liste angegeben ist, muss die Länge der Liste die Länge der cols.

Rückkehr

DataFrame: DataFrame sortiert nach Partitionen.

Hinweise

Eine Spalten-Ordnungszahl beginnt von 1, die sich von der 0-basierten __getitem__unterscheidet. Wenn ein Spalten-Ordinal negativ ist, bedeutet dies, absteigend zu sortieren.

Beispiele

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