Pyspark - Funzioni della data

Pyspark - Funzioni della data
In Python, Pyspark è un modulo Spark utilizzato per fornire un tipo di elaborazione simile come Spark utilizzando DataFrame.

Discuteremo le funzioni della data in pyspark. Creiamo prima un telaio di dati

Esempio:
Qui, creeremo Pyspark DataFrame con 5 righe e 3 colonne con date.

#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 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Visualizza dati dati
df.spettacolo()

Produzione:

datediff ()

Questo metodo viene utilizzato per restituire il numero di giorni tra la data corrente e la data indicata. Per utilizzare questo metodo, dobbiamo importarlo da SQL.funzioni. Quindi, importiamo solo tutti i metodi da Pyspark.SQL.funzioni.

Sintassi:
datediff (col ("column_date1"), col ("column_date2")).alias ("result_column")

Dove:

  1. column_date1 è la prima colonna di data
  2. column_date2 è la seconda colonna di data sottratta da column_date1.
  3. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati

Possiamo visualizzare il frame dati risultante passando questo metodo all'interno di select ().

Sintassi:

df.Seleziona (datediff (col ("column_date1"), col ("column_date2")).alias ("result_column")
)

Possiamo anche sottrarre la colonna della data con la data corrente. Possiamo ottenere la data corrente usando la funzione corrente_date ().

Esempio:
In questo esempio, sottrarremo la colonna ammessa_date da current_date () come differenza di data selezionando current_date () e ammesse_date e visualizzare il metodo di dati utilizzando Show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Calcola la differenza della data dalla data corrente-2022-02-15 con ammessa_date
df.Select (current_date (), col ("ammesse_date"), datediff (current_date (), col ("ammesse_date")).alias ("differenza di data")).spettacolo()

Produzione:

mesi_between ()

Questo metodo viene utilizzato per restituire il numero di mesi tra la data corrente e la data. Per utilizzare questo metodo, dobbiamo importarlo da SQL.funzioni. Quindi, importa tutti i metodi da Pyspark.SQL.funzioni.

Sintassi:
mesi_between (col ("column_date1"), col ("column_date2")).alias ("result_column")

Dove:

  1. column_date1 è la prima colonna di data
  2. column_date2 è la seconda colonna di data sottratta da column_date1.
  3. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati

Possiamo visualizzare il frame dati risultante passando questo metodo all'interno di select ().

Sintassi:
df.Seleziona (mesi_between (col ("column_date1"), col ("column_date2")).alias ("result_column")
)

Possiamo anche sottrarre la colonna della data con la data corrente. Possiamo ottenere la data corrente usando la funzione corrente_date ().

Esempio:
In questo esempio, otterremo i mesi tra la colonna ammessa_date e current_date () come mesi selezionando current_date () e ammesse_date e visualizzare il metodo di dati utilizzando Show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Ottieni i mesi tra la data corrente-2022-02-15 e ammesse_date
df.Select (current_date (), col ("ammesse_date"), mesi_between (current_date (), col ("ammesse_date")).alias ("mesi")).spettacolo()

Produzione:

add_months ()

Questo metodo viene utilizzato per aggiungere mesi alla data data.

Sintassi:
DataFrame.Seleziona (add_months (col ("colonna"), numero_of_months).alias ("result_column"))

Dove,

  1. la colonna è la colonna della data
  2. Number_of_months è il numero totale di mesi da aggiungere alla data della colonna.
  3. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati.

Esempio:
In questo esempio, aggiungeremo mesi al ammetto_date e visualizzeremo il metodo Show () DataFrame utilizzando Show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Aggiungi 12 mesi a ammessa_date
df.Select (col ("ammesse_date"), add_months (col ("ammesse_date"), 12).alias ("dopo 12 mesi")).spettacolo()
# Aggiungi 4 mesi a ammessa_date
df.Select (col ("ammesse_date"), add_months (col ("ammesse_date"), 4).alias ("dopo 4 mesi")).spettacolo()
# Aggiungi 6 mesi a ammessa_date
df.Select (col ("ammesse_date"), add_months (col ("ammesse_date"), 6).alias ("dopo 6 mesi")).spettacolo()

Produzione:

date_add ()

Questo metodo viene utilizzato per aggiungere giorni alla data data.

Sintassi:
DataFrame.Select (date_add (col ("colonna"), numero_of_days).alias ("result_column"))

Dove:

  1. la colonna è la colonna della data
  2. Number_of_days è il numero totale di giorni da aggiungere alla data della colonna.
  3. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati.

Esempio:
In questo esempio, aggiungeremo giorni al ammetto_date e visualizzeremo il metodo Show () DataFrame utilizzando Show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Aggiungi 12 giorni a ammessa_date
df.Select (col ("ammesse_date"), date_add (col ("ammesse_date"), 12).alias ("dopo 12 giorni")).spettacolo()
# Aggiungi 4 giorni a ammessa_date
df.Select (col ("ammesse_date"), date_add (col ("ammesse_date"), 4).alias ("dopo 4 giorni")).spettacolo()
# Aggiungi 6 giorni a ammessa_date
df.Select (col ("ammesse_date"), date_add (col ("ammesse_date"), 6).alias ("dopo 6 giorni")).spettacolo()

Produzione:

date_sub ()

Questo metodo viene utilizzato per sottrarre i giorni alla data data.

Sintassi:
DataFrame.Seleziona (date_sub (col ("colonna"), numero_of_days).alias ("result_column"))

Dove:

  1. la colonna è la colonna della data
  2. Number_of_days è il numero totale di giorni da sottrarre dalla data della colonna.
  3. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati.

Esempio:
In questo esempio, sottraggeremo i giorni dall'ammissione_date e visualizzeremo il telaio dati utilizzando il metodo show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# sottrai 12 giorni dall'ammesso_date
df.Select (col ("ammesse_date"), date_sub (col ("ammesse_date"), 12).alias ("prima di 12 giorni")).spettacolo()
# sottrai 4 giorni dall'ammesso_date
df.Select (col ("ammesse_date"), date_sub (col ("ammesse_date"), 4).alias ("prima di 4 giorni")).spettacolo()
# sottrai 6 giorni dall'ammesso_date
df.Select (col ("ammesse_date"), date_sub (col ("ammesse_date"), 6).alias ("prima di 6 giorni")).spettacolo()

Produzione:

anno()

L'anno () viene utilizzato per restituire l'anno dalla data data.

Sintassi:
DataFrame.Seleziona (anno (col ("colonna")).alias ("result_column"))

Dove:

  1. la colonna è la colonna della data
  2. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati.

Esempio:
In questo esempio, estrarremo l'anno dalla colonna ammessa e visualizzeremo la colonna dell'anno usando il metodo show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Seleziona l'anno dalla colonna ammessa_date
df.Seleziona (anno (col ("ammetto_date")).alias ("anno")).spettacolo()

Produzione:

mese()

il mese () viene utilizzato per restituire il mese dalla data data.

Sintassi:
DataFrame.Seleziona (mese (col ("colonna")).alias ("result_column"))

Dove:

  1. la colonna è la colonna della data
  2. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati.

Esempio:
In questo esempio, estrarremo il mese dal ammetto_date e visualizzeremo la colonna del mese usando il metodo show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Seleziona il mese dalla colonna ammessa_date
df.Seleziona (mese (col ("ammetto_date")).alias ("mese")).spettacolo()

Produzione:

DayOfmonth (), DayOfWeek (), DayOfyear ()

dayofmonth () viene utilizzato per restituire il giorno del mese dalla data data.
DayofWeek () viene utilizzato per restituire il giorno della settimana dalla data data.
DayOfyear () viene utilizzato per restituire il giorno dell'anno dalla data data.

Sintassi:
DataFrame.Seleziona (DayOfmonth (col ("colonna")).alias ("result_column"))
DataFrame.Seleziona (DayOfWeek (col ("colonna")).alias ("result_column"))
DataFrame.Seleziona (DayOfyear (col ("colonna")).alias ("result_column"))

Dove:

  1. la colonna è la colonna della data
  2. L'alias viene utilizzato per specificare l'etichetta per la colonna dei risultati.

Esempio:
In questo esempio, estrarremo il giorno, il mese e l'anno dal metodo ammessi_date e utilizzando show ().

#import il modulo pyspark
importare pyspark
#IMPORT SPARKSESSION per la creazione di una sessione
da pyspark.SQL Importazione di importazione
# Importa tutte le funzioni SQL
da pyspark.SQL.funzioni importanti *
#Crea un'app chiamata LinuxHint
Spark_app = SparkSession.costruttore.appname ('LinuxHint').getOrCreate ()
# Crea dati studenteschi con 5 righe e 3 attributi
Students = ['rollno': '001', 'name': 'sravan', 'ammesse_date': '2022-01-25',
'rollno': '002', 'name': 'deepeka', 'ammesse_date': '2022-02-11',
'rollno': '003', 'name': 'chandrika', 'ammesse_date': '2022-02-02',
'rollno': '004', 'name': 'akash', 'ammesse_date': '2021-04-12',
'rollno': '005', 'name': 'thanuja', 'ammesse_date': '2022-01-25'
"
# Crea il frame dati
df = spark_app.CreatedataFrame (Students)
# Seleziona il giorno della settimana dalla colonna ammessa_date
df.Seleziona (DayOfWeek (col ("ammesso_date").alias ("giorno della settimana")).spettacolo()
# Seleziona il giorno del mese dalla colonna ammessa
df.Seleziona (DayOfMonth (col ("ammesso_date")).alias ("giorno del mese")).spettacolo()
# Seleziona giorno dell'anno dalla colonna ammessa
df.Seleziona (DayOfyear (col ("ammesso_date")).alias ("giorno dell'anno")).spettacolo()

Produzione:

Conclusione

Da questo articolo, abbiamo imparato come utilizzare le funzioni della data su Pyspark DataFrame. Questi sono molto utili nelle applicazioni Dateapa. È anche su come aggiungere giorni e colonne alla data esistente.