Python 十六进制到文本的转换
我正在尝试将包含十六进制值的数据帧转换为文本Python 十六进制到文本的转换,python,pandas,hex,Python,Pandas,Hex,我正在尝试将包含十六进制值的数据帧转换为文本 foo_hex bar_hex baz_hex qux_hex foo_text bar_text baz_text qux_text 30 2D3436 2D3630 3438 使用在线转换器: 我有一个1000行的数据帧,所以我想知道是否可以使用Pandas来实现这一点 我试过: df1['foo_text'] = df1['foo_hex'].apply(lambda x: int(x, base=16)) 但答案并不是根据转
foo_hex bar_hex baz_hex qux_hex foo_text bar_text baz_text qux_text
30 2D3436 2D3630 3438
使用在线转换器:
我有一个1000行的数据帧,所以我想知道是否可以使用Pandas来实现这一点
我试过:
df1['foo_text'] = df1['foo_hex'].apply(lambda x: int(x, base=16))
但答案并不是根据转换工具得出的
谢谢你的帮助 根据提供的示例,您需要将十六进制分为2组,然后分别为每个组获取十进制值,然后将其转换回char(将其转换为文本)。范例-
def func(a):
b = [iter(a)] * 2
result = ''
for char1,char2 in zip(*b):
result = result + chr(int(char1+char2,base=16))
return result
df1['foo_text'] = df1['foo_hex'].apply(func)
def func(a):
b = [iter(a)] * 2
result = ''
for char1,char2 in zip(*b):
result = result + chr(int(char1+char2,base=16))
return result
df1['foo_text'] = df1['foo_hex'].apply(func)