【问题标题】:Format doesn't show格式不显示
【发布时间】:2020-10-04 14:42:12
【问题描述】:

所以我试图让我的月份数字从左边补零,意思是 {01, 02, 03, ..., 10, 11, 12}。

我想通过格式化来做到这一点,但在搜索互联网后,我想知道格式化是否真的添加了一个零,或者我在打印时是否只会看到一个零。

无论哪种方式,我都在尝试:

months.style.format({'Test': '{:0>2}'})
print(months)

当我使用此代码时,它会打印没有格式的“测试”列,这是为什么呢?我使用 Jupyter 笔记本,当我不使用打印功能时,他会以正确的格式显示数据。谢谢

【问题讨论】:

    标签: python pandas formatting zero-padding


    【解决方案1】:

    该代码只是更改了 jupyter notebook 中的格式。它类似于 Excel 中的格式化工作方式。您可以在 Excel 中更改格式,但不会更改单元格的值。

    要更改单元格的格式,请执行以下操作:df.months = '0' + df.months 其中df 是您的数据框。

    编辑(关于 10 月、11 月和 12 月的评论):

    import numpy as np
    df.months = np.where((df.months < 10), '0' + df.months, '' + df.months)
    

    【讨论】:

    • 谢谢。但我不想在 10 月、11 月和 12 月前面出现零
    • 谢谢!我必须添加 astype(str) 并在最后一部分中删除了 '' + ,现在效果很好!最终代码:months['Test']=np.where((months['Test']
    猜你喜欢
    • 1970-01-01
    • 2014-08-08
    • 1970-01-01
    • 1970-01-01
    • 2021-11-30
    • 2015-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多