假设我有一个 Pandas 数据框并且我想为所有数字(整数和浮点数)添加千位分隔符,有什么简单快捷的方法来做到这一点?

最佳答案

使用 , 格式化数字时,您可以只使用 '{:,}'.format :

n = 10000
print '{:,}'.format(n)
n = 1000.1
print '{:,}'.format(n)

在 Pandas 中,您可以将 formatters 参数用于 to_html ,如 here 所述。
num_format = lambda x: '{:,}'.format(x)
def build_formatters(df, format):
    return {
        column:format
        for column, dtype in df.dtypes.items()
        if dtype in [ np.dtype('int64'), np.dtype('float64') ]
    }
formatters = build_formatters(data_frame, num_format)
data_frame.to_html(formatters=formatters)

添加千位分隔符实际上已经在 stackoverflow 上讨论了很多。您可以阅读 herehere

关于python - 在 Python pandas DataFrame 中为数字添加千位分隔符的简单方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41447383/

10-12 22:41