【问题标题】:Pandas zfill multiple items in single cellPandas zfill 单个单元格中的多个项目
【发布时间】:2022-12-01 00:51:24
【问题描述】:

我在一个单元格中有多个值

Q3
1 4
1 3
3 4 11 
3 4 6 15 16

如何 zfill 或 pad 为每个单元格中的每个值添加前导零?

df['Q3'].str.split(' ').apply(lambda x: x.zfill(8))

AttributeError: 'list' 对象没有属性 'zfill'

寻找

Q3
00000001 00000004
00000001 00000003
00000003 00000004 00000011 
00000003 00000004 00000006 00000015 00000016

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    计算列中每个字符串中的整数个数。取最大计数来计算zfill的宽度。应用一个函数,该函数将字符串和宽度作为输入参数,并在填充所需数量的零后返回字符串

    def zfill(s, width):
        x = s.split()
        return ' '.join(['0'] * (width - len(x)) + x)
    
    
    w = df['Q3'].str.count(' ').add(1).max()
    df['Q3'].apply(zfill, width=w)
    

        Q3
    0   0 0 0 1 4
    1   0 0 0 1 3
    2   0 0 3 4 11
    3   3 4 6 15 16
    

    【讨论】:

    • 更新了我的问题以显示我正在寻找的输出。想要在每个单元格中保持相同的值只需用零填充它们
    猜你喜欢
    • 2022-01-08
    • 1970-01-01
    • 1970-01-01
    • 2013-09-29
    • 2017-01-26
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多