Itérer sur les lignes et les colonnes dans le pyspark dataframe

Itérer sur les lignes et les colonnes dans le pyspark dataframe

Dans Python, Pyspark est un module Spark utilisé pour fournir un type de traitement similaire comme Spark en utilisant DataFrame.

Nous pouvons traverser le Pyspark DataFrame à travers des lignes et des colonnes en utilisant:

  1. collecter()
  2. sélectionner()
  3. iterrows ()

Avant de passer à ceux-ci, nous créerons Pyspark DataFrame.

Exemple:

Ici, nous allons créer Pyspark DataFrame avec 5 lignes et 6 colonnes.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#display le dataframe
df.montrer()

Sortir:

collecter()

Cette méthode est utilisée pour itérer les colonnes dans le Pyspark DataFrame donné. Il peut être utilisé avec pour Loop et prend des noms de colonne via l'itérateur pour itérer les colonnes. Enfin, il affichera les lignes en fonction des colonnes spécifiées.

Syntaxe:

pour Row_iterator dans DataFrame.collecter():
print (row_iterator ['colonne'],… .)

Où,

  1. DataFrame est l'entrée Pyspark DataFrame.
  2. la colonne est le nom de la colonne dans le pyspark dataframe.
  3. Row_iterator est la variable itératrice utilisée pour itérer les valeurs de ligne dans la colonne spécifiée.

Exemple 1:

Dans cet exemple, nous itèrent les lignes des colonnes RollNo, Height and Address de Pyspark DataFrame ci-dessus.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
# itérer sur les colonnes RollNo, Height and Address
pour Row_iterator dans DF.collecter():
print (row_iterator ['rollno'], row_iterator ['height'], row_iterator ['adresse'])

Sortir:

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

Exemple 2:

Dans cet exemple, nous itèrent les lignes de la colonne de nom à partir du pyspark ci-dessus.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
# itérer la colonne de nom
pour Row_iterator dans DF.collecter():
print (row_iterator ['name'])

Sortir:

sravan
ojaswi
Gnanesh Chowdary
rocher
sridevi

sélectionner()

Cette méthode est utilisée pour itérer les colonnes dans le Pyspark DataFrame donné. Il peut être utilisé avec la méthode collection () et prend une colonne. Enfin, il affichera les lignes en fonction des colonnes spécifiées.

Syntaxe:

trame de données.Sélectionner («colonne»,…).collecter()

Où,

  1. DataFrame est l'entrée Pyspark DataFrame.
  2. la colonne est le nom de la colonne dans le pyspark dataframe.

Exemple 1:

Dans cet exemple, nous itèrent les lignes de la colonne RollNo et Nom de la Pyspark DataFrame ci-dessus.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#iterate rollno et colonnes de noms
df.sélectionnez ("rollno", "nom").collecter()

Sortir:

[Row (rollno = '001', name = 'sravan'),
Ligne (rollno = '002', name = 'ojaswi'),
Ligne (rollno = '003', name = 'gnanesh chowdary'),
Ligne (rollno = '004', name = 'rohith'),
Row (rollno = '005', name = 'sridevi')]]

Exemple 2:

Dans cet exemple, nous itèrent les lignes de la colonne RollNo et Weight de la Pyspark DataFrame ci-dessus.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#iterate rollno et colonnes de poids
df.sélectionnez ("rollno", "poids").collecter()

Sortir:

[Row (rollno = '001', poids = 67),
Row (rollno = '002', poids = 34),
Row (rollno = '003', poids = 17),
Row (rollno = '004', poids = 28),
Ligne (rollno = '005', poids = 54)]

iterrows ()

Cette méthode est utilisée pour itérer les colonnes dans le Pyspark DataFrame donné. Il peut être utilisé avec pour Loop et prend les noms de colonne via l'itérateur de ligne et indexer les colonnes. Enfin, il affichera les lignes en fonction des indices spécifiés. Avant cela, nous devons nous convertir en pandas en utilisant la méthode topandas ().

Syntaxe:

Pour index, ROW_ITERATOR dans DataFrame.topandas ().iterrows ():
print (row_iterator [index_value],…)

Où,

  1. DataFrame est l'entrée Pyspark DataFrame.
  2. index_value est la position d'index de colonne dans le pyspark dataframe.
  3. Row_iterator est la variable itératrice utilisée pour itérer les valeurs de ligne dans la colonne spécifiée.

Exemple 1:

Dans cet exemple, nous itèrent les lignes des colonnes d'adresse et de hauteur de la dataframe de Pyspark ci-dessus.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#iterate Adresse et colonnes de hauteur
Pour index, ROW_ITERATOR en DF.topandas ().iterrows ():
print (row_iterator [0], row_iterator [1])

Sortir:

Guntur 23
hyd 16
Patna 7
hyd 9
Hyd 37

Exemple 2:

Dans cet exemple, nous itringons les lignes des colonnes d'adresse et de nom à partir de Pyspark DataFrame ci-dessus.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT LA FONCTION COL
de Pyspark.SQL.Fonctions Import Col
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 6 attributs
étudiants = [
'rollno': '001', 'name': 'sravan', 'Âge': 23, 'height': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16, 'height': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7, 'height': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9, 'height': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37, 'height': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#iterate Adresse et colonnes de noms
Pour index, ROW_ITERATOR en DF.topandas ().iterrows ():
print (row_iterator [0], row_iterator [3])

Sortir:

Guntur Sravan
hyd ojaswi
Patna Gnanesh Chowdary
Hyd Rohith
hyd sridevi

Conclusion

Dans ce tutoriel, nous avons discuté de la façon d'itérer sur les lignes et les colonnes dans le Pyspark DataFrame. Nous avons discuté de trois méthodes - select (), collection () et iterrows () avec pour boucle. Ainsi, en utilisant ces méthodes, nous pouvons spécifier les colonnes pour être itérée via l'itérateur de ligne.