Pular para o conteúdo principal

ordenarDentroDasPartições

Retorna um novo DataFrame com cada partição ordenada pela(s) coluna(s) especificada(s).

Sintaxe

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

Parâmetros

Parâmetro

Tipo

Descrição

cols

int, str, lista ou coluna, opcional

Lista de colunas, nomes de colunas ou valores ordinais das colunas para ordenar.

ascending

booleano ou lista, opcional, default True

Valor booleano ou lista de valores booleanos. Ordenar em ordem crescente ou decrescente. Especifique a lista para várias ordens de classificação. Se uma lista for especificada, o comprimento da lista deve ser igual ao comprimento de cols.

Devoluções

DataFrame: DataFrame ordenado por partições.

Notas

Um ordinal de coluna começa em 1, o que é diferente de __getitem__ baseado em 0. Se o valor ordinal de uma coluna for negativo, significa que a classificação é decrescente.

Exemplos

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