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.
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.
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.
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.
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.
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.
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.