Condividi tramite


sort

Restituisce un nuovo dataframe ordinato in base alle colonne specificate.

Sintassi

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

Parametri

Parametro Tipo Descrizione
cols int, str, list o Column, facoltativo elenco di nomi di colonna o ordinali di colonna per l'ordinamento.
ascending bool o list, facoltativo, true predefinito booleano o elenco di valori booleani. Ordinare in ordine crescente o decrescente. Specificare l'elenco per più ordini di ordinamento. Se viene specificato un elenco, la lunghezza dell'elenco deve essere uguale alla lunghezza di cols.

Restituzioni

DataFrame: dataframe ordinato.

Note

Un ordinale di colonna inizia da 1, che è diverso da quello basato su __getitem__0. Se un ordinale di colonna è negativo, significa decrescente.

Examples

from pyspark.sql import functions as sf
df = spark.createDataFrame([
    (2, "Alice"), (5, "Bob")], schema=["age", "name"])

df.sort(sf.asc("age")).show()
# +---+-----+
# |age| name|
# +---+-----+
# |  2|Alice|
# |  5|  Bob|
# +---+-----+

df.sort(df.age.desc()).show()
# +---+-----+
# |age| name|
# +---+-----+
# |  5|  Bob|
# |  2|Alice|
# +---+-----+

df.sort("age", ascending=False).show()
# +---+-----+
# |age| name|
# +---+-----+
# |  5|  Bob|
# |  2|Alice|
# +---+-----+

df = spark.createDataFrame([
    (2, "Alice"), (2, "Bob"), (5, "Bob")], schema=["age", "name"])
df.orderBy(sf.desc("age"), "name").show()
# +---+-----+
# |age| name|
# +---+-----+
# |  5|  Bob|
# |  2|Alice|
# |  2|  Bob|
# +---+-----+