Pyspark - Max

Pyspark - Max
En Python, Pyspark es un módulo Spark utilizado para proporcionar un tipo similar de procesamiento como Spark usando DataFrame. max () en Pyspark Devuelve el valor máximo de una columna particular en DataFrame. Podemos obtener el valor máximo de tres maneras.
  1. Método 1: Uso del método select ()
  2. Método 2: Uso del método Agg ()
  3. Método 3: Uso del método GroupBy ()

Antes de eso, tenemos que crear Pyspark DataFrame para la demostración.

Ejemplo:

Crearemos un marco de datos con 5 filas y 6 columnas y lo mostraremos usando el método show ().

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'Nombre': 'Sravan', 'Age': 23,
'Altura': 5.79, 'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Data DataFrame
df.espectáculo()

Captura de pantalla de salida:

Método 1: Uso del método select ()

Podemos obtener el valor máximo de la columna en la estructura de datos utilizando el método select (). Usando el método max (), podemos obtener el valor máximo de la columna. Para usar este método, tenemos que importarlo de Pyspark.sql.Módulo de funciones, y finalmente, podemos usar el método Collect () para obtener el máximo de la columna.

Sintaxis:

df.SELECT (max ('column_name'))

Dónde,

  1. DF es la entrada Pyspark DataFrame
  2. column_name es la columna para obtener el valor máximo

Si queremos devolver el valor máximo de varias columnas, debemos usar el método max () dentro del método select () especificando el nombre de la columna separado por una coma.

Sintaxis:

df.SELECT (max ('column_name'), max ('column_name'), .. ., max ('column_name'))

Dónde,

  1. DF es la entrada Pyspark DataFrame
  2. column_name es la columna para obtener el valor máximo

Ejemplo 1: columna única

Este ejemplo obtendrá el valor máximo de la columna de altura en el marco de datos de Pyspark.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#Importa la función máxima - max
de Pyspark.sql.Funciones Importar Max
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'Nombre': 'Sravan', 'Age': 23,
'Altura': 5.79, 'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Realizar el máximo de la columna de altura
df.Seleccionar (max ('altura')).recolectar()

Producción:

[Fila (max (altura) = 5.79)]

En el ejemplo anterior, se devuelve el valor máximo de la columna de altura.

Ejemplo 2: múltiples columnas

Este ejemplo obtendrá el valor máximo de las columnas de altura, edad y peso en el marco de datos de Pyspark.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#Importa la función máxima - max
de Pyspark.sql.Funciones Importar Max
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'Nombre': 'Sravan', 'Age': 23,
'Altura': 5.79, 'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Realizar el máximo de las columnas de altura, edad y peso
df.Seleccionar (max ('altura'), max ('edad'), max ('peso')).recolectar()

Producción:

[Fila (max (altura) = 5.79, máx (edad) = 37, max (peso) = 67)]

En el ejemplo anterior, se devuelve el valor máximo de las columnas de altura, edad y peso.

Método 2: Uso del método Agg ()

Podemos obtener el valor máximo de la columna en la estructura de datos utilizando el método Agg (). Este método se conoce como agregación, que agrupa los valores dentro de una columna. Tomará el diccionario como un parámetro en esa clave será el nombre y el valor de la columna es la función agregada, i.mi., máximo. Usando el método max (), podemos obtener el valor máximo de la columna y, finalmente, podemos usar el método coleccionar () para obtener el máximo de la columna.

Sintaxis:

df.AGG ('column_name': max)

Dónde,

  1. DF es la entrada Pyspark DataFrame
  2. column_name es la columna para obtener el valor máximo
  3. Max es una función de agregación utilizada para devolver el valor máximo

Si queremos devolver el valor máximo de varias columnas, debemos especificar el nombre de la columna con la función máxima separada por una coma.

Sintaxis:

df.agg ('column_name': max, 'column_name': max, ..., 'column_name': max)

Dónde,

  1. DF es la entrada Pyspark DataFrame
  2. column_name es la columna para obtener el valor máximo
  3. Max es una función de agregación utilizada para devolver el valor máximo

Ejemplo 1: columna única

Este ejemplo obtendrá el valor máximo de la columna de altura en el marco de datos de Pyspark.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'nombre': 'sravan', 'edad': 23, 'altura': 5.79,
'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Realizar el máximo de la columna de altura
df.AGG ('altura': 'max').recolectar()

Producción:

[Fila (max (altura) = 5.79)]

En el ejemplo anterior, se devuelve el valor máximo de la columna de altura.

Ejemplo 2: múltiples columnas

Este ejemplo obtendrá el valor máximo de las columnas de altura, edad y peso en el marco de datos de Pyspark.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'Nombre': 'Sravan', 'Age': 23,
'Altura': 5.79, 'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Realizar el máximo de las columnas de altura, edad y peso
df.agg ('altura': 'max', 'edad': 'max', 'peso': 'max').recolectar()

Producción:

[Fila (max (peso) = 67, máx (edad) = 37, max (altura) = 5.79)]

En el ejemplo anterior, se devuelve el valor máximo de las columnas de altura, edad y peso.

Método 3: Uso del método GroupBy ()

Podemos obtener el valor máximo de la columna en la estructura de datos utilizando el método GroupBy (). Este método devolverá el valor máximo agrupando valores similares en una columna. Tenemos que usar la función max () después de realizar la función GroupBy ()

Sintaxis:

df.Groupby (group_column). max ('column_name')

Dónde,

  1. DF es la entrada Pyspark DataFrame
  2. Group_column es la columna donde los valores se agrupan en función de esta columna
  3. column_name es la columna para obtener el valor máximo
  4. Max es una función de agregación utilizada para devolver el valor máximo.

Ejemplo 1:

En este ejemplo, agruparemos la columna de dirección con la columna de altura para devolver el valor máximo basado en esta columna de dirección.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'Nombre': 'Sravan', 'Age': 23,
'Altura': 5.79, 'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Realizar el máximo de la columna de altura de la columna con la columna de dirección
df.Groupby ('dirección').Altura máxima').recolectar()

Producción:

Hay tres valores únicos en el campo de dirección: Hyd, Guntur y Patna. Entonces, el máximo se formará agrupando los valores en los valores de la dirección.

[Fila (dirección = 'hyd', max (altura) = 5.59),
Fila (dirección = 'Guntur', max (altura) = 5.79),
Fila (dirección = 'patna', max (altura) = 2.79)]

Ejemplo 2:

En este ejemplo, agruparemos la columna de dirección con la columna de peso para devolver el valor máximo basado en esta columna de dirección.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#cree una aplicación llamada Linuxhint
Spark_app = Sparksession.constructor.AppName ('Linuxhint').getorcreate ()
# Crear datos de estudiante con 5 filas y 6 atributos
estudiantes = [
'Rollno': '001', 'Nombre': 'Sravan', 'Age': 23,
'Altura': 5.79, 'Peso': 67, 'Dirección': 'Guntur',
'Rollno': '002', 'Nombre': 'Ojaswi', 'Age': 16,
'Altura': 3.79, 'Peso': 34, 'Dirección': 'Hyd',
'Rollno': '003', 'Nombre': 'Gnanesh Chowdary', 'Age': 7,
'Altura': 2.79, 'Peso': 17, 'Dirección': 'Patna',
'Rollno': '004', 'Nombre': 'Rohith', 'Age': 9,
'Altura': 3.69, 'Peso': 28, 'Dirección': 'Hyd',
'Rollno': '005', 'Nombre': 'Sridevi', 'Age': 37,
'Altura': 5.59, 'Peso': 54, 'Dirección': 'Hyd']
# Crea el DataFrame
DF = Spark_App.Createdataframe (estudiantes)
#Realizar el máximo de la columna de peso agrupación con la columna de dirección
df.Groupby ('dirección').peso máximo').recolectar()

Producción:

Hay tres valores únicos en el campo de dirección: Hyd, Guntur y Patna. Entonces, el máximo se formará agrupando los valores en los valores de la dirección.

[Fila (direcciones = 'hyd', max (peso) = 54),
Fila (dirección = 'Guntur', max (peso) = 67),
Fila (dirección = 'patna', max (peso) = 17)]

Conclusión:

Discutimos cómo obtener el valor máximo del PySpark DataFrame utilizando los métodos select () y agg (). Para obtener el valor máximo agrupando con otras columnas, utilizamos el grupo junto con la función max (). Ver también Artículo de Pyspark Min ().