Pyspark - impriméschema

Pyspark - impriméschema
Dans Python, Pyspark est un module Spark utilisé pour fournir un type de traitement similaire comme Spark en utilisant DataFrame. La méthode impriméschema () est utilisée pour afficher le schéma du pyspark dataframe.

Il renverra la structure en forme d'arbre et obtiendra le nom de la colonne avec DateType

Syntaxe:

Trame de données.impriméschema ()

Avant d'aller voir cela, nous devons créer un dataframe avec le schéma. Pyspark fournit les méthodes structType () et structField () qui sont utilisées pour définir les colonnes dans le pyspark dataframe.

En utilisant ces méthodes, nous pouvons définir les noms de colonne et les types de données des colonnes particulières.

Discutons un par un

StructType ()

Cette méthode est utilisée pour définir la structure du Pyspark DataFrame. Il acceptera une liste de types de données ainsi que des noms de colonne pour le DataFrame donné. Ceci est connu comme le schéma du dataframe. Il stocke une collection de champs

Structfield ()

Cette méthode est utilisée à l'intérieur de la méthode StructType () du Pyspark DataFrame. Il acceptera les noms de colonne avec le type de données.

Syntaxe:

schéma = structtype ([
Structfield ("colonne 1", type de données, vrai / false),
StructField ("Colonne 2", DataType, True / False),
… ,
StructField ("colonne n", type de données, true / false)])

Où le schéma fait référence au dataframe lorsqu'il est créé

Paramètres:

1. StructType accepte une liste de structures dans une liste séparée par une virgule

2. StructField () ajoute des colonnes au dataframe, qui prend les noms de colonnes comme premier paramètre et le type de données des colonnes particulières comme deuxième paramètre.

Nous devons utiliser les types de données à partir des méthodes qui sont importées du pyspark.SQL.Module de types.

Les types de données pris en charge sont:

  • StringType () - Utilisé pour stocker des valeurs de chaîne
  • IntegerType () - Utilisé pour stocker des valeurs entières ou entier longues
  • FloatType () - utilisé pour stocker les valeurs flottantes
  • DoubleType () - Utilisé pour stocker des valeurs doubles

3. Valeurs booléennes comme troisième paramètre; Si c'est vrai, le type de données donné sera utilisé; Sinon, pas quand c'est faux.

Nous devons transmettre ce schéma à la méthode DataFrame avec des données.

Syntaxe:

CreatedataFrame (données, schéma = schéma)

Exemple 1:

Dans cet exemple, nous avons créé des données dans la liste qui contient 5 lignes et 6 colonnes, et nous attribuons des noms de colonnes comme RollNO avec le type de données de chaîne, un nom avec le type de données de chaîne, l'âge avec le type entier, la hauteur avec un type de flotteur , poids avec entier et adresse avec le type de données de chaîne.

Enfin, nous allons afficher le dataframe à l'aide de la méthode show ().

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
# et importent des types de structures et des types de données
de Pyspark.SQL.Types Import StructType, StructField, StringType, IntegerType, FloatType
#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 = [['001', 'sravan', 23,5.79,67, «Guntur»],
['002', 'ojaswi', 16,3.79,34, «hyd»],
['003', 'Gnanesh Chowdary', 7,2.79,17, 'Patna'],
['004', 'Rohith', 9,3.69,28, «hyd»],
['005', 'sridevi', 37,5.59,54, «hyd»]]
#Define le structure et les structures
# pour les noms de colonne ci-dessous
schéma = structtype ([
StructField ("rollno", stringType (), true),
StructField ("name", stringType (), true),
StructField ("Age", IntegerType (), True),
Structfield ("hauteur", floatType (), true),
Structfield ("poids", IntegerType (), true),
StructField ("adresse", stringType (), true)
])
# réintégrer le dataframe et ajouter un schéma au dataframe
df = spark_app.CreatedataFrame (étudiants, schéma = schéma)
#display le dataframe
df.montrer()

Sortir:

Exemple 2:

Afficher le schéma au format d'arbre avec la méthode impriméschema ()

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
# et importent des types de structures et des types de données
de Pyspark.SQL.Types Import StructType, StructField, StringType, IntegerType, FloatType
#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 = [['001', 'sravan', 23,5.79,67, «Guntur»],
['002', 'ojaswi', 16,3.79,34, «hyd»],
['003', 'Gnanesh Chowdary', 7,2.79,17, 'Patna'],
['004', 'Rohith', 9,3.69,28, «hyd»],
['005', 'sridevi', 37,5.59,54, «hyd»]]
#Define le structure et les structures
# pour les noms de colonne ci-dessous
schéma = structtype ([
StructField ("rollno", stringType (), true),
StructField ("name", stringType (), true),
StructField ("Age", IntegerType (), True),
Structfield ("hauteur", floatType (), true),
Structfield ("poids", IntegerType (), true),
StructField ("adresse", stringType (), true)
])
# réintégrer le dataframe et ajouter un schéma au dataframe
df = spark_app.CreatedataFrame (étudiants, schéma = schéma)
# Afficher le schéma au format d'arbre
df.impriméschema ()

Sortir: