Pyspark - classificar

Pyspark - classificar

No Python, Pyspark é um módulo Spark usado para fornecer um tipo semelhante de processamento como o Spark usando o DataFrame. Em Pyspark, Sort () é usado para organizar as linhas na classificação ou ordem crescente no quadro de dados. Ele retornará o novo DataFrame organizando as linhas no DataFrame existente. Vamos criar um pyspark DataFrame.

Exemplo:

Neste exemplo, criaremos o pyspark DataFrame com 5 linhas e 6 colunas e exibir o método show ().

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23, 'altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16, 'altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7, 'altura': 2.79, 'Peso': 17,
'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9, 'altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37, 'altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
#display dataframe
df.mostrar()

Saída:

Método - 1: Usando Sort ()

Aqui, estamos usando a função Sort () para classificar o quadro de dados Pyspark com base nas colunas. Vai levar uma ou mais colunas.

Sintaxe:

quadro de dados.Sort ("Column_Name",…, "Column_Name")

Aqui,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. Column_name é a coluna em que a classificação é aplicada.

Exemplo:

Neste exemplo, classificaremos o quadro de dados com base no endereço e nas colunas de idade com a função Sort () e exibirá o quadro de dados classificado usando o método collect ().

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23, 'altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16, 'altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7, 'altura': 2.79, 'Peso': 17,
'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9, 'altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37, 'altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
# Classifique o quadro de dados com base em colunas de endereço e idade
# e exiba o quadro de dados classificado
df.classificar ("endereço", "idade").colecionar ()

Saída:

[Linha (endereço = 'guntur', idade = 23, altura = 5.79, nome = 'sravan', rollno = '001', peso = 67),
Linha (endereço = 'hyd', idade = 9, altura = 3.69, nome = 'rohith', rollno = '004', peso = 28),
Linha (endereço = 'hyd', idade = 16, altura = 3.79, nome = 'ojaswi', rollno = '002', peso = 34),
Linha (endereço = 'hyd', idade = 37, altura = 5.59, nome = 'sridevi', rollno = '005', peso = 54),
Linha (endereço = 'patna', idade = 7, altura = 2.79, nome = 'Gnanesh Chowdary', rollno = '003', peso = 17)]

Método - 2: Usando Sort () com função Col

Aqui, estamos usando a função Sort () para classificar o quadro de dados Pyspark com base nas colunas. Temos que especificar os nomes de colunas/s dentro da função Sort () através da função Col. Temos que importar essa função do Pyspark.SQL.Módulo de funções. Isso é usado para ler uma coluna do Pyspark DataFrame.

Sintaxe:

quadro de dados.Sort (col ("column_name"),…, col ("column_name"))))

Aqui,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. Column_name é a coluna em que a classificação é aplicada através da função Col.

Exemplo:

Neste exemplo, classificaremos o quadro de dados com base no endereço e nas colunas de idade com a função Sort () e exibirá o quadro de dados classificado usando o método collect ().

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#import a função col
de Pyspark.SQL.funções Importar col
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23, 'altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16, 'altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7, 'altura': 2.79, 'Peso': 17,
'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9, 'altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37, 'altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
# Classifique o quadro de dados com base em colunas de endereço e idade
# e exiba o quadro de dados classificado
df.classificar (col ("endereço"), col ("idade")).colecionar ()

Saída:

[Linha (endereço = 'guntur', idade = 23, altura = 5.79, nome = 'sravan', rollno = '001', peso = 67),
Linha (endereço = 'hyd', idade = 9, altura = 3.69, nome = 'rohith', rollno = '004', peso = 28),
Linha (endereço = 'hyd', idade = 16, altura = 3.79, nome = 'ojaswi', rollno = '002', peso = 34),
Linha (endereço = 'hyd', idade = 37, altura = 5.59, nome = 'sridevi', rollno = '005', peso = 54),
Linha (endereço = 'patna', idade = 7, altura = 2.79, nome = 'Gnanesh Chowdary', rollno = '003', peso = 17)]

Método - 3: Usando o Sort () com o rótulo DataFrame

Aqui, estamos usando a função Sort () para classificar o quadro de dados Pyspark com base nas colunas. Temos que especificar os nomes/etiquetas da coluna dentro da função sort () através do nome/rótulo da coluna DataFrame.

Sintaxe:

quadro de dados.classificar (DataFrame.Column_name,…, DataFrame.nome da coluna)

Aqui,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. Column_name é a coluna em que a classificação é aplicada.

Exemplo:

Neste exemplo, classificaremos o quadro de dados com base no endereço e nas colunas de idade com a função Sort () e exibirá o quadro de dados classificado usando o método collect ().

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23, 'altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16, 'altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7, 'altura': 2.79, 'Peso': 17,
'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9, 'altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37, 'altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
# Classifique o quadro de dados com base em colunas de endereço e idade
# e exiba o quadro de dados classificado
df.classificar (df.endereço, df.idade).colecionar ()

Saída:

[Linha (endereço = 'guntur', idade = 23, altura = 5.79, nome = 'sravan', rollno = '001', peso = 67),
Linha (endereço = 'hyd', idade = 9, altura = 3.69, nome = 'rohith', rollno = '004', peso = 28),
Linha (endereço = 'hyd', idade = 16, altura = 3.79, nome = 'ojaswi', rollno = '002', peso = 34),
Linha (endereço = 'hyd', idade = 37, altura = 5.59, nome = 'sridevi', rollno = '005', peso = 54),
Linha (endereço = 'patna', idade = 7, altura = 2.79, nome = 'Gnanesh Chowdary', rollno = '003', peso = 17)]

Método - 4: Usando o sort () com o índice DataFrame

Aqui, estamos usando a função Sort () para classificar o quadro de dados Pyspark com base nas colunas. Temos que especificar o índice/índices da coluna dentro da função sort () através do Índice/Posição da Coluna de Dadosframe. No DataFrame, a indexação começa com '0'.

Sintaxe:

quadro de dados.Class

Aqui,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. Column_index é a posição da coluna em que a classificação é aplicada.

Exemplo:

Neste exemplo, classificaremos o quadro de dados com base no endereço e nas colunas de idade com a função Sort () e exibirá o quadro de dados classificado usando o método collect ().

#import o módulo Pyspark
Importar Pyspark
#Import SparkSession para criar uma sessão
de Pyspark.SQL Import SparkSession
#Crie um aplicativo chamado Linuxhint
Spark_App = SparkSession.construtor.AppName ('Linuxhint').getorcreate ()
# Crie dados dos alunos com 5 linhas e 6 atributos
alunos = ['rollno': '001', 'nome': 'sravan', 'idade': 23, 'altura': 5.79, 'Peso': 67, 'Endereço': 'Guntur',
'rollno': '002', 'nome': 'ojaswi', 'idade': 16, 'altura': 3.79, 'Peso': 34, 'Endereço': 'Hyd',
'rollno': '003', 'nome': 'gnanesh chowdary', 'idade': 7, 'altura': 2.79, 'Peso': 17,
'Endereço': 'Patna',
'rollno': '004', 'nome': 'rohith', 'idade': 9, 'altura': 3.69, 'Peso': 28, 'Endereço': 'Hyd',
'rollno': '005', 'nome': 'sridevi', 'idade': 37, 'altura': 5.59, 'Peso': 54, 'Endereço': 'Hyd']
# Crie o DataFrame
df = spark_app.CreatedAtAframe (estudantes)
# Classifique o quadro de dados com base em colunas de endereço e idade
# e exiba o quadro de dados classificado
df.classificar (df [0], df [1]).colecionar ()

Saída:

[Linha (endereço = 'guntur', idade = 23, altura = 5.79, nome = 'sravan', rollno = '001', peso = 67),
Linha (endereço = 'hyd', idade = 9, altura = 3.69, nome = 'rohith', rollno = '004', peso = 28),
Linha (endereço = 'hyd', idade = 16, altura = 3.79, nome = 'ojaswi', rollno = '002', peso = 34),
Linha (endereço = 'hyd', idade = 37, altura = 5.59, nome = 'sridevi', rollno = '005', peso = 54),
Linha (endereço = 'patna', idade = 7, altura = 2.79, nome = 'Gnanesh Chowdary', rollno = '003', peso = 17)]

Conclusão

Neste artigo, discutimos como usar uma função Sort () usando quatro cenários no quadro de dados Pyspark no Python. Finalmente, chegamos a um ponto em que podemos classificar os dados no quadro de dados Pyspark com base nas colunas presentes no DataFrame.