Tenho um DataFrame com uma coluna binária que representa a codificação hexadecimal de uma string inicial:
id_aleatório | id_aleatório_cesu8 |
---|---|
123456789012 | [31 32 33 34 35 36 37 38 39 30 31 32] |
A random_id_cesu8
coluna contém a representação binária da random_id
string codificada em UTF-8 e exibida como uma lista de valores de bytes em formato hexadecimal.
Quero transformar a random_id_cesu8
coluna em uma única string hexadecimal concatenada: 313233343536373839303132
, que é a concatenação de cada valor de byte individual da random_id_cesu8
lista.
Tentei várias abordagens, mas todas resultaram no random_id
valor original ( 123456789012
) em vez da string hexadecimal concatenada desejada ( 313233343536373839303132
).
Como posso realizar corretamente essa transformação?
Aqui está uma solução usando o PySpark para converter a coluna binária em sua representação hexadecimal:
Explicação:
encode(df.value, 'utf-8')
: Esta função codifica o valor da string em um formato binário usando codificação UTF-8.hex()
: Esta função converte os dados binários em sua representação hexadecimal.O resultado será um DataFrame com a
encoded_hex
coluna contendo a string hexadecimal desejada313233343536373839303132
.