Primero, vemos cómo dividir el marco de datos en Pyspark.
Dividir
Es posible particionar las filas en el marco de datos utilizando la función de la ventana. Está disponible en el pyspark.sql.ventana módulo. Habrá dos pasos para dividir las filas en un marco de datos de Pyspark.
Pasos:
Sintaxis:
partición = ventana.Partitionby ("columna")Podemos ordenar los datos particionados con la columna particionada o cualquier otra columna.
Creemos DataFrame.
Ejemplo:
Aquí, creamos un marco de datos Pyspark que tiene 5 columnas: ['temas_id', 'nombre', 'edad', 'tecnología1', 'tecnología2'] con 10 filas.
importar pysparkProducción:
Función de ventana Pyspark min ()
El min () en la función de la ventana se usa para devolver el valor mínimo en cada partición. Puede ser posible devolver un valor mínimo después de dividir el DataFrame.
Sintaxis:
dataframe_obj.WithColumn ("mínimo", min (col ("columna")).sobre (partición))Parámetro:
min (col ("columna"))Aquí, la función min () toma el nombre de la columna como parámetro. Devuelve el mínimo de valores en esta columna en cada partición.
Agregamos el resultado a una columna llamada mínima usando la función withColumn ().
Ejemplo 1:
Ahora, tenemos un cuadro de datos (creado anteriormente). Vamos a dividirlo en función de la columna Technology1 y obtener el valor mínimo de la columna Sujeto_ID en cada partición.
# Importar la función de la ventanaProducción:
Explicación:
El número total de particiones es 4.
Partición 1:
El .La red ocurrió dos veces en la primera partición. El valor mínimo en la columna Sujeto_id es 46.
Partición 2:
Hadoop ocurrió una vez en la segunda partición. Entonces, el valor mínimo es 12.
Partición 3:
Oracle ocurrió cuatro veces en la tercera partición.
El valor mínimo en la columna Sujeto_id es 4.
Partición 4:
PHP ocurrió tres veces en la cuarta partición.
El valor mínimo en la columna Sujeto_id es 4.
Ejemplo 2:
Ahora, tenemos un cuadro de datos (creado anteriormente). Vamos a dividirlo en función de la columna Technology1 y obtener el valor mínimo de la columna de edad en cada partición.
# Importar la función de la ventanaProducción:
Explicación:
El número total de particiones es 4.
Partición 1:
El .La red ocurrió dos veces en la primera partición. El valor mínimo en la columna de edad es 22.
Partición 2:
Hadoop ocurrió una vez en la segunda partición. El valor mínimo es 22.
Partición 3:
Oracle ocurrió cuatro veces en la tercera partición.
El valor mínimo en la columna de edad es 21.
Partición 4:
PHP ocurrió tres veces en la cuarta partición.
El valor mínimo en la columna de edad es 21.
Función de ventana Pyspark Max ()
El max () en la función de la ventana se usa para devolver el valor máximo en cada partición. Puede ser posible devolver un valor máximo después de particionar el marco de datos.
Sintaxis:
dataframe_obj.WithColumn ("máximo", max (col ("columna")).sobre (partición))Parámetro:
max (col ("columna"))Aquí, la función max () toma el nombre de la columna como parámetro. Devuelve el máximo de valores en esta columna en cada partición.
Agregamos el resultado a una columna llamada máxima usando la función withColumn ().
Ejemplo 1:
Ahora, tenemos un cuadro de datos (creado anteriormente). Vamos a dividirlo en función de la columna Technology1 y obtener el valor máximo de la columna Sujeto_ID en cada partición.
# Importar la función de la ventanaProducción:
Explicación:
El número total de particiones es 4.
Partición 1:
El .La red ocurrió dos veces en la primera partición. El valor máximo en la columna Sujeto_id es 46.
Partición 2:
Hadoop ocurrió una vez en la segunda partición. Entonces, el valor máximo es 12.
Partición 3:
Oracle ocurrió cuatro veces en la tercera partición.
El valor máximo en la columna Sujeto_id es 46.
Partición 4:
PHP ocurrió tres veces en la cuarta partición.
El valor máximo en la columna Sujeto_id es 4.
Ejemplo 2:
Ahora, tenemos un cuadro de datos (creado anteriormente). Vamos a dividirlo en función de la columna Technology1 y obtener el valor máximo de la columna de edad en cada partición.
# Importar la función de la ventanaProducción:
Explicación:
El número total de particiones es 4.
Partición 1:
El .La red ocurrió dos veces en la primera partición. El valor máximo en la columna de edad es 22.
Partición 2:
Hadoop ocurrió una vez en la segunda partición. Entonces, el valor máximo es 22.
Partición 3:
Oracle ocurrió cuatro veces en la tercera partición.
El valor máximo en la columna de edad es 23.
Partición 4:
PHP ocurrió tres veces en la cuarta partición.
El valor máximo en la columna de edad es 23.
Conclusión
En este tutorial de partición de Pyspark, aprendimos cómo devolver los valores mínimos en cada ventana particionada utilizando la función min () y los valores máximos en cada ventana particionada usando la función max (). Agregamos el resultado al marco de datos existente como una nueva columna. Asegúrese de tener que importar el Min y el máximo del Pyspark.sql.módulo de funciones.