“In Python, Pyspark è un modulo Spark utilizzato per fornire un tipo di elaborazione simile come Spark utilizzando DataFrame.
Discuteremo due funzioni: traduzione () e overlay () in pyspark.
Discutiamolo uno per uno. Prima di allora, dobbiamo creare un frame dati pyspark per la dimostrazione."
Esempio
Creeremo un frame dati con 5 righe e 6 colonne e visualizzeremo il metodo show ().
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#Display DataFrame
df.spettacolo()
Produzione:
Pyspark Translate ()
Translate () viene utilizzato per sostituire le stringhe in Pyspark DataFrame Colonna Carattere. Dobbiamo specificare i caratteri in una stringa da sostituire con altri caratteri. Ci vogliono tre parametri.
Sintassi:
Translate (colonna, "effettivo_characters", "repacing_characters")
Dove,
- la colonna è il nome della colonna in cui i caratteri vengono sostituiti in questa colonna.
- Actual_Characters sono i caratteri presenti nelle stringhe della colonna data.
- Sostitcing_Characters sono i caratteri che sostituiscono gli attuali_characters uno per uno.
Nota - Il numero di caratteri negli attuali_characters deve essere uguale al numero di sostituti_characters.
Translate () può essere utilizzato con il metodo WithColumn ().
Sintassi complessiva:
DataFrame.withColumn (colonna, traduzione (colonna, "effettivo_characters", "repacing_characters"))
Esempio 1
In questo esempio, stiamo traducendo i personaggi - Gunhy in @$%^e nella colonna dell'indirizzo.
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#import traduci da pyspark.SQL.funzioni
da pyspark.SQL.Funzioni Importazione Translate
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#Transla i personaggi - Gunhy a @$%^&
df.withColumn ('indirizzo', traduzione ('indirizzo', 'gunhy', '@$%^&')).spettacolo()
Produzione:
Possiamo vedere che nella colonna dell'indirizzo - le stringhe che contengono
- G è tradotto in @
- u è tradotto in $
- n è tradotto in %
- h è tradotto in ^
- Y è tradotto in &
Esempio 2
In questo esempio, stiamo traducendo i personaggi - Jaswi in 56434 nella colonna Nome.
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#import traduci da pyspark.SQL.funzioni
da pyspark.SQL.Funzioni Importazione Translate
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#Translate i personaggi - Jaswi a 56434 nella colonna Nome
df.withColumn ('Name', Translate ('Name', 'Jaswi', '56434')).spettacolo()
Produzione:
Possiamo vederlo nella colonna Nome: le stringhe che contengono
- J è tradotto in 5
- A è tradotto in 6
- S è tradotto in 4
- W è tradotto in 3
- Sono tradotto in 4
Pyspark overlay ()
overlay () viene utilizzato per sostituire i valori in una data colonna con un altro valori di colonna. Ci vogliono tre parametri. Può essere usato con una clausola selezionata.
Sintassi:
overlay (sostituito_column, sostituzione_column, posizione)
Dove,
- sostituito_column è la colonna in cui vengono sostituiti i valori.
- SostitCing_Column è la colonna in cui ha sostituito i valori in una colonna sostituita_.
- La posizione viene utilizzata per specificare la posizione o la posizione in sostituito_column in modo che i valori in sostituzione_column occupy sostituite_column.
Nota - Se tutti i caratteri in valori vengono sostituiti in sostituito_column, dalla posizione successiva, appariranno i caratteri sostituiti_column.
Sintassi complessiva:
DataFrame.Select (overlay (sostituita_column, sostituzione_column, posizione))
Esempio
In questo esempio, sostituiremo i valori in
- colonna Nome con l'età del 4 ° carattere nella colonna Nome
- colonna rollno con nome dal 2 ° carattere
#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
#import overlay da pyspark.SQL.funzioni
da pyspark.SQL.Funzioni Importa overlay
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 6 attributi
Students = ['rollno': '001', 'name': 'sravan', 'age': 23, 'altezza': 5.79, "peso": 67, "indirizzo": "guntur",
'rollno': '002', 'name': 'ojaswi', 'age': 16, 'altezza': 3.79, 'peso': 34, 'indirizzo': 'hyd',
'rollno': '003', 'name': 'gnanesh chowdary', 'age': 7, 'altezza': 2.79, 'peso': 17, 'indirizzo': 'patna',
'rollno': '004', 'name': 'rohith', 'age': 9, 'altezza': 3.69, 'peso': 28, 'indirizzo': 'hyd',
'rollno': '005', 'name': 'sridevi', 'age': 37, 'altezza': 5.59, 'peso': 54, 'indirizzo': 'hyd']
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
#replace valori nella colonna Nome con l'età del 4 ° carattere
df.Seleziona (overlay ("nome", "età", 4)).spettacolo()
#replace valori nella colonna rollno con nome dal 2 ° carattere
df.Seleziona (overlay ("rollno", "nome", 2).spettacolo()
Produzione:
Da questo output,
- I caratteri nella colonna di età vengono sostituiti nella colonna Nome dalla 4a posizione di ogni valore e il resto dei caratteri è rimasto lo stesso nella colonna del nome.
- I caratteri nella colonna Nome vengono sostituiti nella colonna Rollno dalla 4a posizione di ogni valore e il resto dei caratteri non ha portato alla colonna Rollno poiché il numero totale di caratteri nei valori della colonna Rollno è inferiore ai valori della colonna del nome. Ecco perché i valori della colonna del nome sono occupati.
Conclusione
Da questo tutorial, abbiamo visto come sostituire le stringhe nelle colonne di dati traduci () e overlay () con semplici esempi.Translate () viene utilizzato per sostituire le stringhe in Pyspark DataFrame Colonna Carattere. Dobbiamo specificare i caratteri in una stringa da sostituire con altri caratteri. overlay () viene utilizzato per sostituire i valori in una data colonna con un altro valori di colonna.