📜  格式化数据框 pandas 中的数字 - Python (1)

📅  最后修改于: 2023-12-03 14:55:41.192000             🧑  作者: Mango

格式化数据框 pandas 中的数字 - Python

在数据分析中,我们经常需要对数字数据进行格式化处理,以使其更易于理解和可视化。 Pandas 提供了许多选项来格式化数据框中的数字。在本文中,我们将介绍如何使用 Pandas 中的格式选项来格式化数据框中的数字。

首先,导入必要的库
import pandas as pd
import numpy as np
创建一个简单的数据框并查看其内容
df = pd.DataFrame(np.random.rand(5, 2))
print(df)

这是我们的数据框:

          0         1
0  0.740248  0.324640
1  0.251901  0.456125
2  0.461348  0.348239
3  0.211234  0.370293
4  0.616115  0.733597
保留小数点后几位数

我们可以使用 round() 函数保留小数点后几位数。下面的示例保留两位小数点:

df_rounded = df.round(2)
print(df_rounded)

输出结果为:

      0     1
0  0.74  0.32
1  0.25  0.46
2  0.46  0.35
3  0.21  0.37
4  0.62  0.73
增加千位分隔符

我们可以使用 applymap() 函数以添加千位分隔符。下面的示例显示如何使用 Python 的 format() 函数添加千位分隔符:

df_formatted = df.applymap('{:,.2f}'.format)
print(df_formatted)

输出结果为:

       0      1
0  0.74   0.32
1  0.25   0.46
2  0.46   0.35
3  0.21   0.37
4  0.62   0.73

在这个例子中,我们使用了 applymap() 函数和 format() 函数来添加逗号和小数点后两位的数字格式。

使用科学记数法表示数字

如果您需要使用科学记数法来表示数字,可以使用 Pandas 中的 set_option() 函数。下面的示例演示如何将 Pandas 设置为使用科学记数法来表示数字:

pd.set_option('display.float_format', '{:.2e}'.format)

df_scientific = pd.DataFrame(np.random.rand(5, 2))
print(df_scientific)

这是输出结果:

       0      1
0  5.91e-01  5.84e-01
1  5.74e-02  5.33e-01
2  3.29e-01  2.15e-01
3  1.48e-01  9.24e-01
4  7.29e-01  7.67e-01

在此示例中,我们使用 set_option() 函数并设置 display.float_format 参数为 '{:.2e}'.format。这意味着 Pandas 将使用科学记数法来表示数字,小数点后保留两位数字。

结论

本文介绍了几种使用 Pandas 格式化数据框中数字的方法。通过这些方法,您可以轻松地调整数字的格式,以便更好地分析和可视化数据。希望这篇文章对您有所帮助!