将完整的整数列转换为字符串,并在pandas中使用逗号分隔千位

时间:2016-12-24 15:58:14

标签: python regex pandas dataframe

假设我使用python中的pandas将国家名称作为行索引存储在数据框列中的人口数据。如何使用逗号将整列数字转换为字符串千位分隔符。 基本上,我需要12345678,整数,转换成12,345,678。

2 个答案:

答案 0 :(得分:5)

使用apply格式化数字。

In [40]: ps.apply('{:,}'.format)
Out[40]:
CountryA    12,345,678
CountryB     3,242,342
dtype: object

In [41]: ps
Out[41]:
CountryA    12345678
CountryB     3242342
dtype: int64

答案 1 :(得分:1)

您也可以使用正则表达式。

df['Population'].str.replace(r"(?!^)(?=(?:\d{3})+$)", ",")

参见演示。

https://regex101.com/r/cVYAGw/1