Pyspark - Fonctions horodatrices

Pyspark - Fonctions horodatrices
Dans Python, Pyspark est un module Spark utilisé pour fournir un type de traitement similaire comme Spark en utilisant DataFrame.

Nous discuterons des fonctions d'horodatage à Pyspark. Créons d'abord un dataframe.

Horodatage

Un horodatage est une données qui incluent la date et l'heure.

La date comprend les mois, la date et l'année.

Le temps comprend l'heure, la minute, le deuxième et le deuxième moulin.

Nous pouvons représenter l'horodatage comme - (Yyyy, MM, DD, H, M, S, MI.S)

Où:

  1. yyyy - représente l'année au format à quatre chiffres
  2. MM - représente le mois au format à deux chiffres
  3. DD - représente la date au format à deux chiffres
  4. H - représente l'heure
  5. M - représente la minute
  6. S - représente la seconde
  7. Mi.S représente des milliers de secondes

En utilisant le module DateTime, nous pouvons créer des horodatages. Donc, cela nécessite l'importation du module DateTime.

Exemple de création:
DateTime.DateTime (2022, 2, 16, 2, 46, 30, 144585)

Exemple:
Ici, nous créerons Pyspark DataFrame avec 5 lignes et 3 colonnes avec des horodatages et afficher la méthode DataFrame à l'aide de Collect ().

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT TOUTES les méthodes de Pyspark.SQL.module de fonctions
de Pyspark.SQL.Fonctions Import *
# Importer le module DateTime
Importer DateTime
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 3 attributs
étudiants = ['rollno': '001', 'name': 'sravan', 'admis_date': datetime.DateTime (2022, 2, 16, 2, 46, 30, 144585),
'rollno': '002', 'name': 'Deepika', 'admis_date': datetime.DateTime (2022, 2, 11, 3, 46, 10, 144582),
'rollno': '003', 'name': 'chandrika', 'admis_date': datetime.DateTime (2021, 1, 8, 4, 46, 44, 194585),
'rollno': '004', 'name': 'akash', 'admis_date': datetime.DateTime (2022, 4, 16, 6, 46, 45, 144185),
'rollno': '005', 'name': 'Thanaja', 'admis_date': datetime.Datetime (2012, 5, 6, 2, 46, 47, 154585)
]]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
# Afficher DataFrame
df.collecter()

Sortir:

[Row (admis_date = datetime.DateTime (2022, 2, 16, 2, 46, 30, 144585), name = 'sravan', rollno = '001'),
Ligne (admis_date = datetime.DateTime (2022, 2, 11, 3, 46, 10, 144582), name = 'Deepika', rollno = '002'),
Ligne (admis_date = datetime.Datetime (2021, 1, 8, 4, 46, 44, 194585), name = 'Chandrika', rollno = '003'),
Ligne (admis_date = datetime.DateTime (2022, 4, 16, 6, 46, 45, 144185), name = 'akash', rollno = '004'),
Ligne (admis_date = datetime.Datetime (2012, 5, 6, 2, 46, 47, 154585), name = 'Thanguja', rollno = '005')]]

format de date()

Ce format est utilisé pour extraire la date / heure de l'horodatage donné. Il prendra le format de date / heure et obtiendra la date / heure en fonction de ce format.

Pour obtenir la date, le format est «yyyy-mm-dd». Nous pouvons placer mm / dd / yyyy à n'importe quel ordre.

Syntaxe:
date_format (col ("timestamp_column"), "yyyy-mm-dd").alias ("result_column")

Où:

  1. Timestamp_Column est la colonne de données d'horodatage
  2. result_column est l'étiquette de cette colonne formatée

Pour obtenir le temps, le format est «HH: MM: SS.SSS ».

Syntaxe:
trame de données.select (date_format (col ("timestamp_column"), "HH: mm: ss.SSS »).alias ("result_column"))

Où:

  1. Timestamp_Column est la colonne de données d'horodatage
  2. result_column est l'étiquette de cette colonne formatée

Exemple 1:
Dans cet exemple, nous extrairera la date comme «date» à partir de la colonne Timestamp admis_date et l'afficherons à l'aide de la méthode Show ().

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT TOUTES les méthodes de Pyspark.SQL.module de fonctions
de Pyspark.SQL.Fonctions Import *
# Importer le module DateTime
Importer DateTime
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 3 attributs
étudiants = ['rollno': '001', 'name': 'sravan', 'admis_date': datetime.DateTime (2022, 2, 16, 2, 46, 30, 144585),
'rollno': '002', 'name': 'Deepika', 'admis_date': datetime.DateTime (2022, 2, 11, 3, 46, 10, 144582),
'rollno': '003', 'name': 'chandrika', 'admis_date': datetime.DateTime (2021, 1, 8, 4, 46, 44, 194585),
'rollno': '004', 'name': 'akash', 'admis_date': datetime.DateTime (2022, 4, 16, 6, 46, 45, 144185),
'rollno': '005', 'name': 'Thanaja', 'admis_date': datetime.Datetime (2012, 5, 6, 2, 46, 47, 154585)
]]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
# Extraire date de l'horodatage
df.select (col ("admis_date"), date_format (col ("admis_date"), "yyyy-mm-dd").alias ("date")).montrer()

Sortir:

Exemple 2:
Dans cet exemple, nous extraire le temps comme «temps» de la colonne Timestamp Admis_Date et l'afficherons en utilisant la méthode Show ().

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT TOUTES les méthodes de Pyspark.SQL.module de fonctions
de Pyspark.SQL.Fonctions Import *
# Importer le module DateTime
Importer DateTime
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 3 attributs
étudiants = ['rollno': '001', 'name': 'sravan', 'admis_date': datetime.DateTime (2022, 2, 16, 2, 46, 30, 144585),
'rollno': '002', 'name': 'Deepika', 'admis_date': datetime.DateTime (2022, 2, 11, 3, 46, 10, 144582),
'rollno': '003', 'name': 'chandrika', 'admis_date': datetime.DateTime (2021, 1, 8, 4, 46, 44, 194585),
'rollno': '004', 'name': 'akash', 'admis_date': datetime.DateTime (2022, 4, 16, 6, 46, 45, 144185),
'rollno': '005', 'name': 'Thanaja', 'admis_date': datetime.Datetime (2012, 5, 6, 2, 46, 47, 154585)
]]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
# Extraire le temps de l'horodatage
df.select (col ("admis_date"), date_format (col ("admis_date"), "hh: mm: ss.SSS ").alias ("temps")).montrer()

Sortir:

heure()

hour () est une méthode qui reviendra l'heure de l'horodatage donné. Il retournera les heures entre les lignes dans une colonne d'horodatage.

Syntaxe:
trame de données.select (hour (col ("timestamp_column"))))

Où, Timestamp_Column est la colonne de données horodatotes.

minute()

Minute () est une méthode qui reviendra à quelques minutes de l'horodatage donné. Il reviendra les minutes à travers les lignes dans une colonne d'horodatage.

Syntaxe:
trame de données.select (minute (col («timestamp_column»))))

Où, Timestamp_Column est la colonne de données horodatotes.

deuxième()

deuxième () est une méthode qui retournera les secondes de l'horodatage donné. Il retournera quelques secondes sur les lignes dans une colonne d'horodatage.

Syntaxe:
trame de données.SELECT (deuxième (col ("Timestamp_Column"))))

Où, Timestamp_Column est la colonne de données horodatotes.

Exemple:
Dans cet exemple, nous extrairera l'heure, les minutes et les secondes de la colonne Timestamp Admis_Date en utilisant les méthodes ci-dessus et afficher la méthode DataFrame à l'aide de Show ().

# importer le module Pyspark
Importer Pyspark
#mport Sparkcession pour la création d'une session
de Pyspark.SQL IMPORT SPARKSESSE
#IMPORT TOUTES les méthodes de Pyspark.SQL.module de fonctions
de Pyspark.SQL.Fonctions Import *
# Importer le module DateTime
Importer DateTime
#create une application nommée Linuxhint
Spark_App = Sparkcession.constructeur.appname ('Linuxhint').getorCreate ()
# Créer des données étudiants avec 5 lignes et 3 attributs
étudiants = ['rollno': '001', 'name': 'sravan', 'admis_date': datetime.DateTime (2022, 2, 16, 2, 46, 30, 144585),
'rollno': '002', 'name': 'Deepika', 'admis_date': datetime.DateTime (2022, 2, 11, 3, 46, 10, 144582),
'rollno': '003', 'name': 'chandrika', 'admis_date': datetime.DateTime (2021, 1, 8, 4, 46, 44, 194585),
'rollno': '004', 'name': 'akash', 'admis_date': datetime.DateTime (2022, 4, 16, 6, 46, 45, 144185),
'rollno': '005', 'name': 'Thanaja', 'admis_date': datetime.Datetime (2012, 5, 6, 2, 46, 47, 154585)
]]
# Créer le DataFrame
df = spark_app.CreatedataFrame (étudiants)
# Extraire les heures de l'horodatage
df.select (col ("admis_date"), hour (col ("admis_date"))).montrer()
# Extraire les minutes de l'horodatage
df.select (col ("admis_date"), minute (col ("admis_date"))).montrer()
# Extrait des secondes de l'horodatage
df.select (col ("admis_date"), deuxième (col ("admis_date"))).montrer()

Sortir:

Conclusion

Dans ce tutoriel, nous avons discuté de la façon d'extraire la date et l'heure à l'aide de la méthode date_format () et en utilisant hour (), minute () et second (). Nous avons extrait les heures, les minutes et les secondes de la colonne d'horodatage dans le Pyspark DataFrame.