Método sort()

Ordena linhas em um dataframe em ordem sequencial crescente ou decrescente de acordo com um ou mais colunas-chave especificadas.

Sintaxe

nome_dataframe.sort(on = ["coluna_chave", "...n"], ascending = True|False)

Parâmetros

Nome Descrição
on = ["coluna_chave", "...n"]

Uma ou mais colunas-chave para ordenar.

Se você ordenar por mais de uma coluna, criará grupos aninhados. A ordem do aninhamento seguirá a ordem em que as colunas forem especificadas.

As colunas-chave ficam na posição mais à esquerda no dataframe ordenado.

ascending = True | False

opcional

  • True ordenar uma ou mais colunas em ordem crescente
  • False ordenar uma ou mais colunas em ordem decrescente

Se o parâmetro for omitido, a ordem crescente padrão será usada.

Retorna

Dataframe do HCL.

Exemplos

Ordenar por uma única coluna

Você quer ordenar as linhas do dataframe inventory por número de produto. O dataframe inventory é permanentemente reordenado:

inventory.sort(on = ["ProdNo"])

Ordenar por uma única coluna e gerar linhas inteiras

Você quer ordenar as linhas do dataframe inventory por número de produto. As linhas ordenadas são geradas em um novo dataframe, denominado inventory_sorted. A ordem do dataframe inventory original não é modificada.

Linhas inteiras são incluídas no dataframe de saída:

inventory_sorted = inventory.sort(on = ["ProdNo"])

Para alternar do critério de ordenação crescente padrão para um critério de ordenação decrescente, use o parâmetro ascending:

inventory_sorted = inventory.sort(on = ["ProdNo"], ascending = False)

Ordenar por uma única coluna, gerar um subconjunto de colunas

Você quer ordenar as linhas do dataframe inventory por número de produto. Somente as colunas especificadas pelo método select() são geradas em um novo dataframe, denominado inventory_quantity_on_hand.

inventory_quantity_on_hand = inventory.sort(on = ["ProdNo"], ascending = True).select(["ProdNo", "ProdDesc", "ProdStat", "QtyOH"])

Ordenar por várias colunas (ordem aninhada)

Você quer ordenar as linhas do dataframe inventory por localização, classe de produto e número do produto. As linhas são geradas em um novo dataframe, denominado inventory_location_prodcls_number.

inventory_location_prodcls_number = inventory.sort(on = ["Location", "ProdCls", "ProdNo"], ascending = True)