我在 pandas 数据框中有一列,其格式如下
f1 d3 a4 0a d0 6a 4b 4a 83 d4 4f c9 1f 15 11 17
我想把它转换成这样:
f1d3a40a-d06a-4b4a-83d4-4fc91f151117
我知道我可以使用 replace("", "")
去除空格,但我不确定如何将连字符插入到我需要的确切位置。
我也不确定如何将它应用于 pandas 系列对象。
任何帮助将不胜感激!
最佳答案
这看起来像一个 UUID,所以我只使用那个模块
>>> import uuid
>>> s = 'f1 d3 a4 0a d0 6a 4b 4a 83 d4 4f c9 1f 15 11 17'
>>> uuid.UUID(''.join(s.split()))
UUID('f1d3a40a-d06a-4b4a-83d4-4fc91f151117')
>>> str(uuid.UUID(''.join(s.split())))
'f1d3a40a-d06a-4b4a-83d4-4fc91f151117'
编辑:
df = pd.DataFrame({'col':['f1 d3 a4 0a d0 6a 4b 4a 83 d4 4f c9 1f 15 11 17',
'f1 d3 a4 0a d0 6a 4b 4a 83 d4 4f c9 1f 15 11 17']})
df['col'] = df['col'].str.split().str.join('').apply(uuid.UUID)
print (df)
col
0 f1d3a40a-d06a-4b4a-83d4-4fc91f151117
1 f1d3a40a-d06a-4b4a-83d4-4fc91f151117
关于Python字符串转换,去掉空格,加连字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54348892/