Pyspark - Max

Pyspark - Max
Dans Python, Pyspark est un module Spark utilisé pour fournir un type de traitement similaire comme Spark en utilisant DataFrame. Max () dans Pyspark renvoie la valeur maximale d'une colonne particulière dans le dataframe. Nous pouvons obtenir la valeur maximale de trois manières.
  1. Méthode 1: Utilisation de la méthode SELECT ()
  2. Méthode 2: Utilisation de la méthode AGG ()
  3. Méthode 3: Utilisation de la méthode groupby ()

Avant cela, nous devons créer Pyspark DataFrame pour la démonstration.

Exemple:

Nous allons créer un dataframe avec 5 lignes et 6 colonnes et l'afficher à 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
#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,
'Hauteur': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#display dataframe
df.montrer()

Capture d'écran de sortie:

Méthode 1: Utilisation de la méthode SELECT ()

Nous pouvons obtenir la valeur maximale de la colonne dans le dataframe à l'aide de la méthode SELECT (). En utilisant la méthode max (), nous pouvons obtenir la valeur maximale de la colonne. Pour utiliser cette méthode, nous devons l'importer de Pyspark.SQL.Module fonctions, et enfin, nous pouvons utiliser la méthode Collect () pour obtenir le maximum de la colonne.

Syntaxe:

df.select (max ('column_name'))

Où,

  1. df est l'entrée pyspark dataframe
  2. Column_name est la colonne pour obtenir la valeur maximale

Si nous voulons renvoyer la valeur maximale de plusieurs colonnes, nous devons utiliser la méthode max () dans la méthode SELECT () en spécifiant le nom de colonne séparé par une virgule.

Syntaxe:

df.select (max ('Column_name'), max ('Column_name'),… ., Max ('Column_name'))

Où,

  1. df est l'entrée pyspark dataframe
  2. Column_name est la colonne pour obtenir la valeur maximale

Exemple 1: colonne unique

Cet exemple obtiendra la valeur maximale de la colonne de hauteur dans le pyspark dataframe.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
# importer la fonction maximale - max
de Pyspark.SQL.fonctions import max
#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,
'Hauteur': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#return le maximum de la colonne de hauteur
df.sélectionner (max («hauteur»)).collecter()

Sortir:

[Row (max (hauteur) = 5.79)]

Dans l'exemple ci-dessus, la valeur maximale de la colonne de hauteur est renvoyée.

Exemple 2: plusieurs colonnes

Cet exemple obtiendra la valeur maximale des colonnes de hauteur, d'âge et de poids dans le Pyspark DataFrame.

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
# importer la fonction maximale - max
de Pyspark.SQL.fonctions import max
#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,
'Hauteur': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#return le maximum des colonnes de hauteur, d'âge et de poids
df.SELECT (Max ('Height'), Max ('Age'), Max ('Weight')).collecter()

Sortir:

[Row (max (hauteur) = 5.79, max (âge) = 37, max (poids) = 67)]

Dans l'exemple ci-dessus, la valeur maximale des colonnes de hauteur, d'âge et de poids est retournée.

Méthode 2: Utilisation de la méthode AGG ()

Nous pouvons obtenir la valeur maximale de la colonne dans le dataframe à l'aide de la méthode AGG (). Cette méthode est connue sous le nom d'agrégation, qui regroupe les valeurs dans une colonne. Il prendra le dictionnaire en tant que paramètre dans cette touche sera le nom de colonne et la valeur est la fonction agrégée, i.e., max. À l'aide de la méthode max (), nous pouvons obtenir la valeur maximale de la colonne, et enfin, nous pouvons utiliser la méthode collection () pour obtenir le maximum de la colonne.

Syntaxe:

df.AGG ('Column_name': Max)

Où,

  1. df est l'entrée pyspark dataframe
  2. Column_name est la colonne pour obtenir la valeur maximale
  3. Max est une fonction d'agrégation utilisée pour renvoyer la valeur maximale

Si nous voulons renvoyer la valeur maximale de plusieurs colonnes, nous devons spécifier le nom de la colonne avec la fonction maximale séparée par une virgule.

Syntaxe:

df.AGG ('Column_name': Max, 'Column_name': Max,…, 'Column_name': Max)

Où,

  1. df est l'entrée pyspark dataframe
  2. Column_name est la colonne pour obtenir la valeur maximale
  3. Max est une fonction d'agrégation utilisée pour renvoyer la valeur maximale

Exemple 1: colonne unique

Cet exemple obtiendra la valeur maximale de la colonne de hauteur dans le pyspark 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,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#return le maximum de la colonne de hauteur
df.agg ('height': 'max').collecter()

Sortir:

[Row (max (hauteur) = 5.79)]

Dans l'exemple ci-dessus, la valeur maximale de la colonne de hauteur est renvoyée.

Exemple 2: plusieurs colonnes

Cet exemple obtiendra la valeur maximale des colonnes de hauteur, d'âge et de poids dans le Pyspark 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,
'Hauteur': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#return le maximum des colonnes de hauteur, d'âge et de poids
df.AGG ('Height': 'Max', 'Age': 'Max', 'Weight': 'Max').collecter()

Sortir:

[Row (max (poids) = 67, max (âge) = 37, max (hauteur) = 5.79)]

Dans l'exemple ci-dessus, la valeur maximale des colonnes de hauteur, d'âge et de poids est retournée.

Méthode 3: Utilisation de la méthode groupby ()

Nous pouvons obtenir la valeur maximale de la colonne dans le DataFrame à l'aide de la méthode GroupBy (). Cette méthode renverra la valeur maximale en regroupant des valeurs similaires dans une colonne. Nous devons utiliser la fonction max () après avoir effectué une fonction GroupBy ()

Syntaxe:

df.GroupBy (Group_Column). Max ('Column_name')

Où,

  1. df est l'entrée pyspark dataframe
  2. Group_Column est la colonne où les valeurs sont regroupées en fonction de cette colonne
  3. Column_name est la colonne pour obtenir la valeur maximale
  4. Max est une fonction d'agrégation utilisée pour renvoyer la valeur maximale.

Exemple 1:

Dans cet exemple, nous regrouperons la colonne d'adresse avec la colonne de hauteur pour retourner la valeur maximale en fonction de cette colonne d'adresse.

# 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,
'Hauteur': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#return le maximum du groupe de colonne de hauteur avec colonne d'adresse
df.Groupby ('Adresse').hauteur maximum').collecter()

Sortir:

Il y a trois valeurs uniques dans le champ d'adresse - Hyd, Guntur et Patna. Ainsi, le maximum sera formé en regroupant les valeurs à travers les valeurs d'adresse.

[Row (adresse = 'hyd', max (hauteur) = 5.59),
Ligne (adresse = 'guntur', max (hauteur) = 5.79),
Ligne (adresse = 'patna', max (hauteur) = 2.79)]

Exemple 2:

Dans cet exemple, nous regrouperons la colonne d'adresse avec la colonne de poids pour retourner la valeur maximale en fonction de cette colonne d'adresse.

# 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,
'Hauteur': 5.79, «poids»: 67, «adresse»: «guntur»,
'rollno': '002', 'name': 'ojaswi', 'Âge': 16,
'Hauteur': 3.79, «poids»: 34, «adresse»: «hyd»,
'rollno': '003', 'name': 'gnanesh chowdary', 'Âge': 7,
'Hauteur': 2.79, «poids»: 17, «adresse»: «patna»,
'rollno': '004', 'name': 'rohith', 'Âge': 9,
'Hauteur': 3.69, «poids»: 28, «adresse»: «hyd»,
'rollno': '005', 'name': 'sridevi', 'Âge': 37,
'Hauteur': 5.59, «poids»: 54, «adresse»: «hyd»]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
#return le maximum du groupe de colonnes de poids avec colonne d'adresse
df.Groupby ('Adresse').poids maximum').collecter()

Sortir:

Il y a trois valeurs uniques dans le champ d'adresse - Hyd, Guntur et Patna. Ainsi, le maximum sera formé en regroupant les valeurs à travers les valeurs d'adresse.

[Row (adresse = 'hyd', max (poids) = 54),
Ligne (adresse = 'guntur', max (poids) = 67),
Ligne (adresse = 'patna', max (poids) = 17)]

Conclusion:

Nous avons discuté de la façon d'obtenir la valeur maximale de Pyspark DataFrame à l'aide des méthodes SELECT () et AGG (). Pour obtenir la valeur maximale en se regroupant avec d'autres colonnes, nous avons utilisé le groupe avec la fonction max (). Voir aussi l'article Pyspark Min ().