Pyspark ASC_NULLS_FIRST e ASC_NULLS_LAST FUNÇÕES

Pyspark ASC_NULLS_FIRST e ASC_NULLS_LAST FUNÇÕES
Se você deseja classificar os valores em uma coluna no Pyspark Dataframe com o NULLS em ordem ascendente, poderá ir com as funções ASC_NULLS_FIRST () e ASC_NULLS_LAST ().

Antes de discutir essas funções, criaremos uma amostra Pyspark Dataframe.

Dados

Importar Pyspark
de Pyspark.SQL Import SparkSession
Spark_App = SparkSession.construtor.nome do aplicativo('_').getorcreate ()
alunos = [(4, 'sravan', 23, nenhum, nenhum),
(4, 'Chandana', 23, 'CSS', 'Pyspark'),
(46, 'Mounika', 22, nenhum, '.LÍQUIDO'),
(4, 'Deepika', 21, 'html', nenhum),
]
dataframe_obj = spark_app.CreatedataFrame (estudantes, ['sujeito_id', 'nome', 'idade', 'tecnologia1', 'tecnologia2']))
dataframe_obj.mostrar()


Saída:


Agora, existem 5 colunas e 4 linhas.

função asc_nulls_first ()

A função ASC_NULLS_FIRST () classifica os valores em uma coluna em ordem crescente, mas colocará os valores nulos existentes em uma coluna primeiro.

Ele pode ser usado com o método select () para selecionar as colunas ordenadas. É muito importante usar o orderby () porque a principal coisa aqui é classificar.orderby () e toma asc_nulls_first () como um parâmetro.

Sintaxe

dataframe_obj.Selecione (dataframe_obj.coluna).orderby (dataframe_obj.coluna.ASC_NULLS_
primeiro())


Onde dataframe_obj é o quadro e a coluna é o nome da coluna no qual os valores são classificados, todos os valores nulos serão colocados primeiro.

Então, nosso quadro de dados está pronto. Vamos demonstrar a função ASC_NULLS_FIRST ().

Exemplo 1

Agora, classificaremos os valores na coluna Technology1 com valores nenhum/nulo em ordem crescente usando a função ASC_NULLS_FIRST ().

#Sort a coluna Technology1 em ordem ascendente e obtenha os valores nulos primeiro.
dataframe_obj.Selecione (dataframe_obj.tecnologia1).orderby (dataframe_obj.Technology1.ASC_
nulls_first ()).mostrar()


Saída:


Na verdade, existem dois valores nulos. Primeiro, eles são colocados e, posteriormente, o CSS e o HTML são classificados em ordem crescente.

Exemplo 2

Agora, classificaremos os valores na coluna Technology2 que não possui valores de nenhum/nulo em ordem crescente usando a função ASC_NULLS_FIRST ().

#Sort a coluna Technology2 em ordem ascendente e obtenha os valores nulos primeiro.
Dataframe_obj.Selecione (dataframe_obj.tecnologia2).orderby (dataframe_obj.Technology2.ASC_
nulls_first ()).mostrar()


Saída:


Na verdade, existem dois valores nulos. Primeiro, eles são colocados e depois, .Net e Pyspark são classificados em ordem crescente.

função asc_nulls_last ()

A função ASC_NULLS_LAST () classifica os valores em uma coluna em ordem crescente, mas colocará os valores nulos existentes em uma coluna Última.

Ele pode ser usado com o método select () para selecionar as colunas ordenadas. É muito importante usar o orderby () porque a principal coisa aqui é classificar.orderby () como toma asc_nulls_first () como um parâmetro.

Sintaxe

dataframe_obj.Selecione (dataframe_obj.coluna).orderby (dataframe_obj.coluna.ASC_NULLS_LAST ())


Onde dataframe_obj é o quadro e a coluna é o nome da coluna no qual os valores são classificados, todos os valores nulos serão colocados finalmente.

Então, nosso quadro de dados está pronto. Vamos demonstrar a função ASC_NULLS_LAST ().

Exemplo 1

Agora, classificaremos os valores na coluna Technology2 que não possuem valores de nenhum/nulo em ordem crescente usando a função ASC_NULLS_LAST ().

#Sort a coluna da tecnologia1 em ordem ascendente e obtenha os valores nulos duram.
dataframe_obj.Selecione (dataframe_obj.tecnologia1).orderby (dataframe_obj.Technology1.ASC_
nulls_last ()).mostrar()


Saída:


Na verdade, existem dois valores nulos. Primeiro, CSS e HTML são classificados em ordem ascendente e dois valores nulos são colocados por último.

Exemplo 2

Agora, classificaremos os valores na coluna Technology2 que não possuem valores de nenhum/nulo em ordem crescente usando a função ASC_NULLS_LAST ().

#Sort a coluna Technology2 em ordem ascendente e obtenha os valores nulos duram.
dataframe_obj.Selecione (dataframe_obj.tecnologia2).orderby (dataframe_obj.Technology2.ASC_
nulls_last ()).mostrar()


Saída:


Na verdade, existem dois valores nulos. Primeiro, .Net e Pyspark são classificados em ordem crescente e dois valores nulos são colocados por último.

Código geral

Importar Pyspark
de Pyspark.SQL Import SparkSession
Spark_App = SparkSession.construtor.nome do aplicativo('_').getorcreate ()
alunos = [(4, 'sravan', 23, nenhum, nenhum),
(4, 'Chandana', 23, 'CSS', 'Pyspark'),
(46, 'Mounika', 22, nenhum, '.LÍQUIDO'),
(4, 'Deepika', 21, 'html', nenhum),
]
dataframe_obj = spark_app.CreatedataFrame (estudantes, ['sujeito_id', 'nome', 'idade', 'tecnologia1', 'tecnologia2']))
dataframe_obj.mostrar()
#Sort a coluna Technology1 em ordem ascendente e obtenha os valores nulos primeiro.
dataframe_obj.Selecione (dataframe_obj.tecnologia1).orderby (dataframe_obj.Technology1.ASC_
nulls_first ()).mostrar()
#Sort a coluna Technology2 em ordem ascendente e obtenha os valores nulos primeiro.
dataframe_obj.Selecione (dataframe_obj.tecnologia2).orderby (dataframe_obj.Technology2.ASC_
nulls_first ()).mostrar()
#Sort a coluna da tecnologia1 em ordem ascendente e obtenha os valores nulos duram.
dataframe_obj.Selecione (dataframe_obj.tecnologia1).orderby (dataframe_obj.Technology1.ASC_
nulls_last ()).mostrar()
#Sort a coluna Technology2 em ordem ascendente e obtenha os valores nulos duram.
dataframe_obj.Selecione (dataframe_obj.tecnologia2).orderby (dataframe_obj.Technology2.ASC_
nulls_last ()).mostrar()

Conclusão

No final deste tutorial do Pyspark, aprendemos que é possível lidar com o NULL enquanto classifica os valores em um DataFrame usando as funções ASC_NULLS_FIRST () e ASC_NULLS_LAST (). A função ASC_NULLS_FIRST () classifica os valores em uma coluna em ordem crescente, mas colocará os valores nulos existentes em uma coluna primeiro. A função ASC_NULLS_LAST () classifica os valores em uma coluna em ordem crescente, mas colocará os valores nulos existentes em uma coluna Última. Você pode executar todo o código especificado na última parte do tutorial.