En este artículo, discutiremos cómo cambiar el nombre de varias columnas en PySpark Dataframe. Para ello utilizaremos las funciones withColumnRenamed() y toDF() .
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 with null values # we can define null values with none data = [[None, "sravan", "vignan"], ["2", None, "vvit"], ["3", "rohith", None], ["4", "sridevi", "vignan"], ["1", None, None], ["5", "gnanesh", "iit"]] # specify column names columns = ['ID', 'NAME', 'college'] # creating a dataframe from the lists of data dataframe = spark.createDataFrame(data, columns) # show columns print(dataframe.columns) # display dataframe dataframe.show()
Producción:
Método 1: Usando withColumnRenamed()
Este método se utiliza para cambiar el nombre de una columna en el marco de datos
Sintaxis: dataframe.withColumnRenamed(“antiguo_nombre_columna”, “nuevo_nombre_columna”)
dónde
- el marco de datos es el marco de datos pyspark
- old_column_name es el nombre de la columna existente
- new_column_name es el nuevo nombre de columna
Para cambiar varias columnas, podemos especificar las funciones por n veces, separadas por “.” operador
Sintaxis: dataframe.withColumnRenamed(“antiguo_nombre_columna”, “nuevo_nombre_columna”).
withColumnRenamed”old_column_name”, “new_column_name”)
Ejemplo 1: programa de Python para cambiar el nombre de la columna de dos columnas
Python3
# display actual columns print("Actual columns: ", dataframe.columns) # change the college column name to university # and ID to student_id dataframe = dataframe.withColumnRenamed( "college", "university").withColumnRenamed("ID", "student_id") # display modified columns print("modified columns: ", dataframe.columns) # final dataframe dataframe.show()
Producción:
Ejemplo 2: Cambiar el nombre de todas las columnas
Python3
# display actual columns print("Actual columns: ", dataframe.columns) # change the college column name to university # and ID to student_id dataframe = dataframe.withColumnRenamed( "college", "university").withColumnRenamed( "ID", "student_id").withColumnRenamed("NAME", "student_name") # display modified columns print("modified columns: ", dataframe.columns) # final dataframe dataframe.show()
Producción:
Método 2: Usar toDF()
Este método se usa para cambiar los nombres de todas las columnas del marco de datos
Sintaxis: dataframe.toDF(*(“columna 1″,”columna 2”,”columna n))
donde, las columnas son las columnas en el marco de datos
Ejemplo: programa Python para cambiar los nombres de las columnas
Python3
# display actual print("Actual columns: ", dataframe.columns) # change column names to A,B,C dataframe = dataframe.toDF(*("A", "B", "C")) # display new columns print("New columns: ", dataframe.columns) # display dataframe dataframe.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