【问题标题】:df.replace regex from hex to binarydf.replace 正则表达式从十六进制到二进制
【发布时间】:2021-06-04 23:45:58
【问题描述】:

我正在尝试在 pandas 列中将十六进制转换为二进制。对象类型。

我已经把F转成1111没问题,现在怎么从0-F转??

df1 = df["SFROW_ID"].replace(to_replace=r'F', value='1111', regex=True)

目前的输出

谢谢

【问题讨论】:

    标签: python pandas binary hex


    【解决方案1】:

    您可以将其转换为int,然后再转换回二进制:

    df["SFROW_ID"].map(lambda x: f"{int(x, 16):012b}")
    
    df
       A SFROW_ID
    0  1      247
    1  2       FC
    2  3      2D0
    3  4      001
    4  5      068
    
    df1
       A      SFROW_ID
    0  1  001001000111
    1  2  000011111100
    2  3  001011010000
    3  4  000000000001
    4  5  000001101000
    

    【讨论】:

    • 我会看一下,是否有一个标志来确保输出是 col "SFROW_ID" 中的十六进制值的 12 位,我需要前导零,谢谢
    猜你喜欢
    • 2019-04-25
    • 1970-01-01
    • 2014-03-05
    • 2011-10-03
    • 1970-01-01
    • 2021-05-29
    • 2017-02-27
    • 2012-07-12
    相关资源
    最近更新 更多