如何格式化 pandas 中的不同值?

How format different values in pandas?

我有一列数据框,其中包含 1000 多种不同格式的值。 我如何格式化这些以便拥有像这样的统一视图 1.000.000.

 Sales 
1.000.000
10000000
150,250
0,200655

例如:

对于您的输入,这应该有效:

df['Sales'] = ["{:,}".format(int(num.replace('.', '').replace(',', ''))).replace(',', '.') for num in df['Sales']]

这里我们:

  1. 获取 Sales 列中的每个元素并删除“,”和“.”即“150,250”->“150250”
  2. 然后将字符串转换为int 即'150250' -> 150250
  3. 然后使用 "{:,}".format()int 格式化为带逗号的字符串,即 150250 -> '150,250'
  4. 在这个转换后的字符串中,我们将逗号“,”替换为句点“.”即“150,250”->“150.250”
  5. 用结果创建一个数组并将其分配给 Dataframe 的 Sales 列

输入:

       Sales
0  1.000.000
1   10000000
2    150,250
3   0,200655

输出:

        Sales
0   1.000.000
1  10.000.000
2     150.250
3     200.655