Itera sobre linhas e colunas no quadro de dados Pyspark

Itera sobre linhas e colunas no quadro de dados Pyspark

No Python, Pyspark é um módulo Spark usado para fornecer um tipo semelhante de processamento como o Spark usando o DataFrame.

Podemos atravessar o quadro de dados Pyspark através de linhas e colunas usando:

  1. colecionar ()
  2. SELECT ()
  3. iterrows ()

Antes de mudar para estes, criaremos o Pyspark DataFrame.

Exemplo:

Aqui, vamos criar dados de dados Pyspark com 5 linhas e 6 colunas.

#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)
#Display O DataFrame
df.mostrar()

Saída:

colecionar ()

Este método é usado para iterar as colunas no quadro de dados Pyspark dado. Pode ser usado com loop e leva nomes de colunas através do iterador para iterar colunas. Finalmente, ele exibirá as linhas de acordo com as colunas especificadas.

Sintaxe:

Para Row_iterator no DataFrame.colecion ():
print (row_iterator ['coluna'],… .)

Onde,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. coluna é o nome da coluna no pyspark dataframe.
  3. Row_iterator é a variável iteradora usada para iterar os valores de linha na coluna especificada.

Exemplo 1:

Neste exemplo, estamos iterando linhas das colunas de Rollno, Altura e Endereço do Pyspark Dataframe acima.

#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)
# itera sobre rollno, altura e colunas de endereço
para row_iterator em df.colecion ():
print (row_iterator ['rollno'], row_iterator ['altura'], row_iterator ['endereço']))

Saída:

001 5.79 Guntur
002 3.79 hid
003 2.79 Patna
004 3.69 hid
005 5.59 Hyd

Exemplo 2:

Neste exemplo, estamos iterando linhas da coluna de nome do Pyspark Dataframe acima.

#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)
# itera sobre a coluna de nome
para row_iterator em df.colecion ():
print (row_iterator ['nome'])

Saída:

Sravan
Ojaswi
Gnanesh Chowdary
Rohith
Sridevi

SELECT ()

Este método é usado para iterar as colunas no quadro de dados Pyspark dado. Pode ser usado com o método collect () e leva a coluna. Finalmente, ele exibirá as linhas de acordo com as colunas especificadas.

Sintaxe:

quadro de dados.Selecione (“Coluna”,…).colecionar ()

Onde,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. coluna é o nome da coluna no pyspark dataframe.

Exemplo 1:

Neste exemplo, estamos iterando linhas da coluna Rollno e Name do Pyspark Dataframe acima.

#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)
#iterate rollno e colunas de nome
df.Selecione ("rollno", "nome").colecionar ()

Saída:

[Linha (rollno = '001', nome = 'sravan'),
Linha (rollno = '002', nome = 'ojaswi'),
Linha (rollno = '003', nome = 'gnanesh Chowdary'),
Linha (rollno = '004', nome = 'rohith'),
Linha (rollno = '005', nome = 'sridevi')]

Exemplo 2:

Neste exemplo, estamos iterando linhas da coluna Rollno e Weight do quadro de dados Pyspark acima.

#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)
#itere rollno e colunas de peso
df.Selecione ("rollno", "peso").colecionar ()

Saída:

[Linha (rollno = '001', peso = 67),
Linha (rollno = '002', peso = 34),
Linha (rollno = '003', peso = 17),
Linha (rollno = '004', peso = 28),
Linha (rollno = '005', peso = 54)]

iterrows ()

Este método é usado para iterar as colunas no quadro de dados Pyspark dado. Pode ser usado com loop e leva nomes de colunas através do iterador de linha e indexado para iterar colunas. Finalmente, ele exibirá as linhas de acordo com os índices especificados. Antes disso, temos que converter em pandas usando o método topandas ().

Sintaxe:

Para índice, Row_iterator no DataFrame.topenda ().iterrows ():
print (row_iterator [index_value],…)

Onde,

  1. DataFrame é a entrada Pyspark DataFrame.
  2. index_value é a posição do índice da coluna no pyspark DataFrame.
  3. Row_iterator é a variável iteradora usada para iterar os valores de linha na coluna especificada.

Exemplo 1:

Neste exemplo, estamos iterando linhas a partir do endereço e colunas de altura do quadro de dados Pyspark acima.

#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)
#iterate Endereço e colunas de altura
Para índice, Row_iterator em DF.topenda ().iterrows ():
print (row_iterator [0], row_iterator [1])

Saída:

Guntur 23
HYD 16
Patna 7
Hyd 9
Hyd 37

Exemplo 2:

Neste exemplo, estamos iterando linhas do endereço e colunas de nome do quadro de dados Pyspark acima.

#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)
#iterate Endereço e colunas de nome
Para índice, Row_iterator em DF.topenda ().iterrows ():
print (row_iterator [0], row_iterator [3])

Saída:

Guntur Sravan
Hyd Ojaswi
Patna Gnanesh Chowdary
Hyd Rohith
Hyd Sridevi

Conclusão

Neste tutorial, discutimos como iterar sobre linhas e colunas no quadro de dados Pyspark. Discutimos três métodos - selecione (), colecion () e iterrows () com loop. Portanto, usando esses métodos, podemos especificar as colunas para ser iterado através do iterador da linha.