Convertir Pyspark DataFrame en Pandas DataFrame

Convertir Pyspark DataFrame en Pandas DataFrame

Dans Python, Pyspark est un module Spark utilisé pour fournir un type de traitement similaire comme Spark en utilisant DataFrame. Il fournit les plusieurs méthodes pour retourner les lignes supérieures du Pyspark DataFrame.

Pandas est un module utilisé pour l'analyse des données. Il prend en charge trois structures de données - série, dataframe et panneau. Nous pouvons convertir Pyspark DataFrame en Pandas DataFrame une fois que nous avons Pyspark DataFrame.

Créons d'abord Pyspark Dataframe.

Exemple:

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#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)
# trame de données
df.montrer()

Sortir:

Topandas () est une méthode qui convertira Pyspark DataFrame en Pandas DataFrame.

Syntaxe:

trame de données.topandas ()

où DataFrame est l'entrée pyspark dataframe.

Exemple:

Dans cet exemple, nous convertissons au-dessus de Pyspark DataFrame à Pandas DataFrame.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#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)
#convert en pandas dataframe
Imprimer (DF.topandas ())

Sortir:

Nous pouvons itérer le dataframe via iTerrows () en convertissant Pyspark en pandas.

iterrows ()

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

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 didacticiel, nous avons discuté de la convertification de Pyspark DataFrame en Pandas DataFrame à l'aide de la méthode Topandas () et a publié la méthode Pandas Dataframe à l'aide de Iterrows ().