Então, internamente, o número é convertido em formato binário e bits são deslocados. Existem duas possibilidades. Os bits mudarão da esquerda para a direita ou direita para a esquerda.
A mudança de pedaços da esquerda para a direita é chamada de turno esquerdo, e a mudança de bits da direita para a esquerda é conhecida como o turno direito.
Neste tutorial de Pyspark, veremos como fazer a mudança à esquerda e a mudança direita nos valores em uma coluna específica de um quadro de dados.
função shiftleft ()
Está disponível no Pyspark.SQL.funções módulo. A função shiftleft () muda os bits para a esquerda.
É avaliado na fórmula, valor*(2^turno).
Por exemplo:
Vamos mudar o valor 12 por 3 bits.
Solução:
12*(2*3)
=> 12*8
=> 96
Então, 12 após a mudança de 3 picadas é 96.
Isso pode ser usado dentro do método select (), pois podemos exibir os valores deslocados em uma coluna usando o método select () no Pyspark.
Sintaxe
dataframe_obj.Selecione (dataframe_obj.M1, Shiftleft (DataFrame_OBJ.coluna, n))
Parâmetros:
A função shiftleft () leva dois parâmetros.
Exemplo 1
Então, criaremos um pyspark Dataframe com 5 linhas e 5 colunas: ['sujeito_id', 'nome', 'idade', 'm1', 'm2'].
E mude 2 bits nas colunas M1 e M2 para a esquerda.
Saída:
Explicação
Na coluna 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
Na coluna 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
Exemplo 2
Então, criaremos um pyspark Dataframe com 5 linhas e 5 colunas: ['sujeito_id', 'nome', 'idade', 'm1', 'm2'].
E mude 4 bits nas colunas M1 e M2 para a esquerda.
Saída:
Explicação
Na coluna 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
Na coluna 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
função shiftright ()
Está disponível no Pyspark.SQL.funções módulo. A função Shiftright () muda os bits para a direita.
É avaliado na fórmula, Valor/(2^turno)
Por exemplo: vamos mudar o valor 12 por 3 bits.
Solução:
12/(2*3)
=> 12/8
=> 1
Assim, 12 depois de mudar 3 mordidas da direita para a esquerda é 1.
Isso pode ser usado dentro do método select (). Porque podemos exibir os valores deslocados em uma coluna usando o método select () em Pyspark.
Sintaxe
dataframe_obj.Selecione (dataframe_obj.M1, Shiftright (DataFrame_OBJ.coluna, n))
Parâmetros:
Shiftright () leva dois parâmetros.
Exemplo 1
Então, criaremos um pyspark Dataframe com 5 linhas e 5 colunas: ['sujeito_id', 'nome', 'idade', 'm1', 'm2'].
E mude 2 bits nas colunas M1 e M2 para a direita.
Saída:
Explicação
Na coluna 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
Na coluna 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
Exemplo 2
Então, criaremos um pyspark Dataframe com 5 linhas e 5 colunas: ['sujeito_id', 'nome', 'idade', 'm1', 'm2'].
E mude 4 bits nas colunas M1 e M2 para a direita.
Saída:
Explicação
Na coluna 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
Na coluna 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
Conclusão
Neste tutorial Pyspark, vemos como mudar os bits no pyspark Dataframe. A função shiftleft () muda os bits para a esquerda. É avaliado na fórmula, valor*(mudança 2^). A função Shiftright () muda os bits para a direita. É avaliado na fórmula, valor/(2^turno). Certifique -se de ter que importar essas duas funções do Pyspark.SQL.Módulo de funções.