En este artículo, veremos cómo ordenar el marco de datos de PySpark por varias columnas.
Se puede hacer de estas formas:
- Usando ordenar()
- Usando ordenar por()
Creando Dataframe para demostración:
Python3
# importing module import pyspark # importing sparksession from pyspark.sql module from pyspark.sql import SparkSession # creating sparksession and giving an app name spark = SparkSession.builder.appName('sparkdf').getOrCreate() # list of students data data = [["1", "sravan", "vignan"], ["2", "ojaswi", "vvit"], ["3", "rohith", "vvit"], ["4", "sridevi", "vignan"], ["1", "sravan", "vignan"], ["5", "gnanesh", "iit"]] # specify column names columns = ['student ID', 'student NAME', 'college'] # creating a dataframe from the lists of data dataframe = spark.createDataFrame(data, columns) print("Actual data in dataframe") # show dataframe dataframe.show()
Producción:
Método 1: Usar la función sort()
Esta función se utiliza para ordenar la columna.
Sintaxis: dataframe.sort([‘columna1′,’columna2′,’columna n’],ascending=True)
Dónde,
- dataframe es el nombre del marco de datos creado a partir de las listas anidadas usando pyspark
- donde las columnas son las primeras de las columnas
- ascendente = Verdadero especifica el orden del marco de datos en orden creciente, ascendente = Falso especifica el orden del marco de datos en orden decreciente
Ejemplo 1: código de Python para ordenar el marco de datos pasando una lista de varias columnas (2 columnas) en orden ascendente.
Python3
# show dataframe by sorting the dataframe # based on two columns in ascending order dataframe.sort(['college','student ID'], ascending = True).show()
Producción:
Ejemplo 2: programa Python para ordenar el marco de datos pasando una lista de columnas en orden descendente
Python3
# show dataframe by sorting the dataframe # based on two columns in descending order dataframe.sort(['college','student NAME'], ascending = False).show()
Producción:
Método 2: Usar la función orderBy().
función orderBy() que ordena una o más columnas. Por defecto ordena de forma ascendente.
Sintaxis: orderBy(*columnas, ascendente=Verdadero)
Parámetros:
- cols: Columnas por las que se necesita realizar la clasificación.
- ascendente: valor booleano para decir que la clasificación debe hacerse en orden ascendente
Ejemplo 1: programa de Python para mostrar el marco de datos ordenando el marco de datos en función de dos columnas en orden descendente usando la función orderby()
Python3
# show dataframe by sorting the dataframe # based on two columns in descending # order using orderby() function dataframe.orderBy(['student ID','student NAME'], ascending = False).show()
Producción:
Ejemplo 2: programa de Python para mostrar el marco de datos ordenando el marco de datos en función de dos columnas en orden ascendente usando la función orderby()
Python3
# show dataframe by sorting the dataframe # based on two columns in ascending # order using orderby() function dataframe.orderBy(['student ID','student NAME'], ascending = True).show()
Producción:
Publicación traducida automáticamente
Artículo escrito por gottumukkalabobby y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA