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.