Pyspark traduce y superposición

Pyspark traduce y superposición
"En Python, Pyspark es un módulo Spark utilizado para proporcionar un tipo similar de procesamiento como Spark usando DataFrame.

Discutiremos dos funciones: Translate () y Overlay () en Pyspark.

Discutamos uno por uno. Antes de eso, tenemos que crear un marco de datos de Pyspark para la demostración."

Ejemplo

Vamos a crear un marco de datos con 5 filas y 6 columnas y mostrarlo 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', 'edad': 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', 'edad': 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()

Producción:

Pyspark traduce ()

traduce () se usa para reemplazar las cadenas en la columna Pyspark DataFrame carácter por carácter. Tenemos que especificar los caracteres en una cadena para ser reemplazados por otros caracteres. Se necesitan tres parámetros.

Sintaxis:

traducir (columna, 'real_characters', 'repacing_characters')

Dónde,

  1. La columna es el nombre de la columna en la que se reemplazan los caracteres en esta columna.
  2. Real_characters son los caracteres presentes en las cadenas de la columna dada.
  3. reemplazar_characteres son los caracteres que reemplazan los reales_Characters uno por uno.

Nota - El número de caracteres en los reales_characteres debe ser igual al número de reemplazo_characters.

traducir () se puede usar con el método withColumn ().

Sintaxis general:

marco de datos.WithColumn (columna, traducir (columna, 'real_characteres', 'repacing_characters')))

Ejemplo 1

En este ejemplo, estamos traduciendo los caracteres - Gunhy a @$%^y en la columna de dirección.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#Import traducir de Pyspark.sql.funciones
de Pyspark.sql.Funciones importar traducir
#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', 'edad': 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', 'edad': 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)
#Translate los personajes - Gunhy a @$%^&
df.WithColumn ('Dirección', Traduce ('Dirección', 'Gunhy', '@$%^&'))).espectáculo()

Producción:

Podemos ver eso en la columna de dirección: las cadenas que contienen

  1. G se traduce a @
  2. U está traducido a $
  3. n se traduce al %
  4. H se traduce a ^
  5. y se traduce a y

Ejemplo 2

En este ejemplo, estamos traduciendo los caracteres - Jaswi a 56434 en la columna de nombre.

#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#Import traducir de Pyspark.sql.funciones
de Pyspark.sql.Funciones importar traducir
#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', 'edad': 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', 'edad': 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)
#Translate los caracteres - Jaswi a 56434 en la columna de nombre
df.WithColumn ('Nombre', Traduce ('Nombre', 'Jaswi', '56434'))).espectáculo()

Producción:

Podemos ver eso en la columna de nombre: las cadenas que contienen

  1. J se traduce a 5
  2. a se traduce a 6
  3. S se traduce a 4
  4. W se traduce a 3
  5. Me traducen a 4

Pyspark Overlay ()

Overlay () se usa para reemplazar los valores en una columna determinada con otra columna valores. Se necesitan tres parámetros. Se puede usar con una cláusula de selección.

Sintaxis:

Overlay (reemplazado_column, reemplazar_column, posición)

Dónde,

  1. reemplazado_column es la columna en la que se reemplazan los valores.
  2. reemplazar_column es la columna en la que reemplazó los valores en una columna reemplazado_.
  3. La posición se utiliza para especificar la posición o ubicación en reemplazado_column de modo que los valores en reemplazar_column ocupan reemplazado_column.

Nota - Si todos los caracteres en valores se reemplazan en reemplazado_column, desde la siguiente posición, aparecerán los caracteres reemplazados_column.

Sintaxis general:

marco de datos.Seleccionar (Overlay (reemplazado_column, reemplazar_column, posición))

Ejemplo

En este ejemplo, reemplazaremos los valores en

  1. Columna de nombre con edad de la columna de 4º personaje en Nombre
  2. columna Rollno con nombre del segundo personaje
#Importa el módulo Pyspark
importar pyspark
#Import Sparksession para crear una sesión
de Pyspark.SQL Import Sparksession
#superposición de Import de Pyspark.sql.funciones
de Pyspark.sql.Funciones de importación de importación
#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', 'edad': 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', 'edad': 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)
#Valores de replacos en la columna de nombre con edad del 4 ° carácter
df.Seleccione (Overlay ("Nombre", "Age", 4)).espectáculo()
#Valores de replace en la columna Rollno con nombre del segundo carácter
df.Seleccione (Overlay ("Rollno", "Nombre", 2)).espectáculo()

Producción:

De esta salida,

  1. Los caracteres en la columna de edad se reemplazan en la columna de nombre desde la cuarta posición de cada valor, y el resto de los caracteres se han mantenido igual en la columna de nombre.
  2. Los caracteres en la columna de nombre se reemplazan en la columna Rollno desde la cuarta posición de cada valor, y el resto de los caracteres no han resultado en la columna RollNO ya que el número total de caracteres en los valores de la columna RollNO es menor que los valores de la columna de nombre. Es por eso que los valores de la columna de nombre están ocupados.

Conclusión

De este tutorial, vimos cómo reemplazar las cadenas en las funciones de traducción () y superpuesto () y superpuesto () con ejemplos simples.traduce () se usa para reemplazar las cadenas en la columna Pyspark DataFrame carácter por carácter. Tenemos que especificar los caracteres en una cadena para ser reemplazados por otros caracteres. Overlay () se usa para reemplazar los valores en una columna determinada con otra columna valores.