Fonctions Pyspark Shiftleft et Shiftright

Fonctions Pyspark Shiftleft et Shiftright
Les opérations de changement de vitesse signifient le déplacement des bits par rapport au nombre total de positions fournies dans un nombre binaire.

Ainsi, en interne, le nombre est converti en format binaire et les bits sont décalés. Il y a deux possibilités. Soit les bits passeront de gauche à droite ou de droite à gauche.

Les bits de déplacement de gauche à droite sont appelés le changement de gauche, et les bits de déplacement de droite à gauche sont connus sous le nom.

Dans ce didacticiel Pyspark, nous verrons comment faire le changement de gauche et le décalage droit sur les valeurs dans une colonne particulière d'une dataframe.

fonction shiftleft ()

Il est disponible dans le pyspark.SQL.les fonctions module. La fonction SHIFTLEFT () déplace les bits vers la gauche.

Il est évalué à la formule, valeur * (2 ^ shift).

Par exemple:

Changeons la valeur 12 par 3 bits.

Solution:

12 * (2 * 3)
=> 12 * 8
=> 96

Donc, 12 après le déplacement de 3 piqûres est 96.

Cela peut être utilisé à l'intérieur de la méthode SELECT () car nous pouvons afficher les valeurs décalées dans une colonne en utilisant la méthode SELECT () dans Pyspark.

Syntaxe
dataframe_obj.SELECT (DATAFRAME_OBJ.M1, SHIFTLEFT (DATAFRAME_OBJ.colonne, n))

Paramètres:
La fonction SHIFTLEFT () prend deux paramètres.

  1. Le premier paramètre est le nom de la colonne.
  2. Le deuxième paramètre est l'entier représentant le nombre total de bits à décalé.

Exemple 1
Ainsi, nous créerons un Pyspark DataFrame avec 5 lignes et 5 colonnes: [«Subject_id», «Name», «Age», «M1», «M2»].
Et déplacer 2 bits dans les colonnes M1 et M2 vers la gauche.

Importer Pyspark
de Pyspark.SQL IMPORT SPARKSESSE
Spark_App = Sparkcession.constructeur.nom de l'application('_').getorCreate ()
étudiants = [(4, «Sravan», 23,78,90),
(4, «Chandana», 23,67,89),
(46, «Mounika», 22,54,67),
(4, «Deepika», 21 100,100),
(46, «Chandrika», 22,50,50),
]]
dataframe_obj = spark_app.CreatedataFrame (étudiants, [«sujet_id», «nom», «âge», «m1», «m2»])
dataframe_obj.montrer()
# Importez la fonction SHIFTLEFT du module - Pyspark.SQL.les fonctions
de Pyspark.SQL.Fonctions Import Shiftleft
#Perform Shiftleft Operation sur toutes les valeurs de la colonne M1 par 2 positions
Colonne # et M2 par 2 positions
dataframe_obj.SELECT (DATAFRAME_OBJ.M1, SHIFTLEFT (DATAFRAME_OBJ.m1,2), dataframe_obj.M2, SHIFTLEFT (DATAFRAME_OBJ.M2,2)).montrer()

Sortir:

Explication

Dans la colonne M1:

78 => 78 * (2 ^ 2) = 312
67 => 67 * (2 ^ 2) = 268
54 => 54 * (2 ^ 2) = 216
100 => 100 * (2 ^ 2) = 400
50 => 50 * (2 ^ 2) = 200

Dans la colonne M2:

90 => 90 * (2 ^ 2) = 360
89 => 89 * (2 ^ 2) = 356
67 => 67 * (2 ^ 2) = 268
100 => 100 * (2 ^ 2) = 400
50 => 50 * (2 ^ 2) = 200

Exemple 2
Ainsi, nous créerons un Pyspark DataFrame avec 5 lignes et 5 colonnes: [«Subject_id», «Name», «Age», «M1», «M2»].
Et déplacer 4 bits dans les colonnes M1 et M2 vers la gauche.

Importer Pyspark
de Pyspark.SQL IMPORT SPARKSESSE
Spark_App = Sparkcession.constructeur.nom de l'application('_').getorCreate ()
étudiants = [(4, «Sravan», 23,78,90),
(4, «Chandana», 23,67,89),
(46, «Mounika», 22,54,67),
(4, «Deepika», 21 100,100),
(46, «Chandrika», 22,50,50),
]]
dataframe_obj = spark_app.CreatedataFrame (étudiants, [«sujet_id», «nom», «âge», «m1», «m2»])
dataframe_obj.montrer()
# Importez la fonction SHIFTLEFT du module - Pyspark.SQL.les fonctions
de Pyspark.SQL.Fonctions Import Shiftleft
#Perform Swiftleft Fonctionnal sur toutes les valeurs de la colonne M1 par 4 positions
Colonne # et M2 par 4 positions
dataframe_obj.SELECT (DATAFRAME_OBJ.M1, SHIFTLEFT (DATAFRAME_OBJ.m1,4), dataframe_obj.M2, SHIFTLEFT (DATAFRAME_OBJ.M2,4)).montrer()

Sortir:

Explication

Dans la colonne M1:

78 => 78 * (2 ^ 4) = 1248
67 => 67 * (2 ^ 4) = 1072
54 => 54 * (2 ^ 4) = 864
100 => 100 * (2 ^ 4) = 1600
50 => 50 * (2 ^ 4) = 800

Dans la colonne M2:

90 => 90 * (2 ^ 4) = 1440
89 => 89 * (2 ^ 4) = 1424
67 => 67 * (2 ^ 4) = 1072
100 => 100 * (2 ^ 4) = 1600
50 => 50 * (2 ^ 4) = 800

fonction shiftright ()

Il est disponible dans le pyspark.SQL.les fonctions module. La fonction shiftright () déplace les bits vers la droite.

Il est évalué à la formule, valeur / (2 ^ shift)

Par exemple: changeons la valeur 12 par 3 bits.

Solution:

12 / (2 * 3)
=> 12/8
=> 1

Ainsi, 12 après avoir déplacé 3 bouchées de droite à gauche est 1.

Cela peut être utilisé à l'intérieur de la méthode SELECT (). Parce que nous pouvons afficher les valeurs décalées dans une colonne en utilisant la méthode SELECT () dans Pyspark.

Syntaxe
dataframe_obj.SELECT (DATAFRAME_OBJ.M1, SHIFTRIGHT (DATAFRAME_OBJ.colonne, n))

Paramètres:
shiftright () prend deux paramètres.

  1. Le premier paramètre est le nom de la colonne.
  2. Le deuxième paramètre est l'entier représentant le nombre total de bits à décalé à droite.

Exemple 1
Ainsi, nous créerons un Pyspark DataFrame avec 5 lignes et 5 colonnes: [«Subject_id», «Name», «Age», «M1», «M2»].
Et déplacer 2 bits dans les colonnes M1 et M2 vers la droite.

Importer Pyspark
de Pyspark.SQL IMPORT SPARKSESSE
Spark_App = Sparkcession.constructeur.nom de l'application('_').getorCreate ()
étudiants = [(4, «Sravan», 23,78,90),
(4, «Chandana», 23,67,89),
(46, «Mounika», 22,54,67),
(4, «Deepika», 21 100,100),
(46, «Chandrika», 22,50,50),
]]
dataframe_obj = spark_app.CreatedataFrame (étudiants, [«sujet_id», «nom», «âge», «m1», «m2»])
dataframe_obj.montrer()
# Importez la fonction SHIFTRIGHT du module - Pyspark.SQL.les fonctions
de Pyspark.SQL.Fonctions Import Shiftright
#Perform SHIFTRIGHT Operation sur toutes les valeurs de la colonne M1 par 2 positions
Colonne # et M2 par 2 positions
dataframe_obj.SELECT (DATAFRAME_OBJ.M1, SHIFTRIGHT (DATAFRAME_OBJ.m1,2), dataframe_obj.m2, shiftright (dataframe_obj.M2,2)).montrer()

Sortir:

Explication

Dans la colonne M1:

78 => 78 / (2 ^ 2) = 19
67 => 67 / (2 ^ 2) = 16
54 => 54 / (2 ^ 2) = 13
100 => 100 / (2 ^ 2) = 25
50 => 50 / (2 ^ 2) = 12

Dans la colonne M2:

90 => 90 / (2 ^ 2) = 22
89 => 89 / (2 ^ 2) = 22
67 => 67 / (2 ^ 2) = 16
100 => 100 / (2 ^ 2) = 25
50 => 50 / (2 ^ 2) = 12

Exemple 2
Ainsi, nous créerons un Pyspark DataFrame avec 5 lignes et 5 colonnes: [«Subject_id», «Name», «Age», «M1», «M2»].
Et déplacer 4 bits dans les colonnes M1 et M2 vers la droite.

Importer Pyspark
de Pyspark.SQL IMPORT SPARKSESSE
Spark_App = Sparkcession.constructeur.nom de l'application('_').getorCreate ()
étudiants = [(4, «Sravan», 23,78,90),
(4, «Chandana», 23,67,89),
(46, «Mounika», 22,54,67),
(4, «Deepika», 21 100,100),
(46, «Chandrika», 22,50,50),
]]
dataframe_obj = spark_app.CreatedataFrame (étudiants, [«sujet_id», «nom», «âge», «m1», «m2»])
dataframe_obj.montrer()
# Importez la fonction SHIFTRIGHT du module - Pyspark.SQL.les fonctions
de Pyspark.SQL.Fonctions Import Shiftright
#Perform SHIFTRIGHT Operation sur toutes les valeurs de la colonne M1 par 4 positions
Colonne # et M2 par 4 positions
dataframe_obj.SELECT (DATAFRAME_OBJ.M1, SHIFTRIGHT (DATAFRAME_OBJ.m1,4), dataframe_obj.m2, shiftright (dataframe_obj.M2,4)).montrer()

Sortir:

Explication

Dans la colonne M1:

78 => 78 / (2 ^ 4) = 4
67 => 67 / (2 ^ 4) = 4
54 => 54 / (2 ^ 4) = 3
100 => 100 / (2 ^ 4) = 6
50 => 50 / (2 ^ 4) = 3

Dans la colonne M2:

90 => 90 / (2 ^ 4) = 5
89 => 89 / (2 ^ 4) = 5
67 => 67 / (2 ^ 4) = 4
100 => 100 / (2 ^ 4) = 6
50 => 50 / (2 ^ 4) = 3

Conclusion

Dans ce tutoriel Pyspark, nous voyons comment déplacer les bits dans le Pyspark DataFrame. La fonction SHIFTLEFT () déplace les bits vers la gauche. Il est évalué à la formule, valeur * (2 ^ shift). La fonction shiftright () déplace les bits vers la droite. Il est évalué à la formule, valeur / (2 ^ shift). Assurez-vous que vous devez importer ces deux fonctions à partir du pyspark.SQL.module de fonctions.