Pandas:如何使用describe()并删除科学记数法


您可以使用describe()函数为pandas DataFrame中的变量生成描述性统计数据

要从describe()函数的输出中删除科学记数法,可以使用以下方法:

方法 1:在对列使用describe() 时删除科学记数法

 df[' my_column ']. describe (). apply ( lambda x: format (x, ' f '))

方法 2:在对多列使用describe() 时删除科学记数法

 df. describe (). apply ( lambda x: x.apply (' {0:.5f} '. format ))

以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' store ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' sales ': [8450550, 406530, 53000, 6000, 2000, 4000, 5400, 6500],
                   ' returns ':[2212200, 145200, 300, 2500, 700, 600, 800, 1200]})

#view DataFrame
print (df)

  store sales returns
0 A 8450550 2212200
1 A 406530 145200
2 A 53000 300
3 A 6000 2500
4 B 2000 700
5 B 4000 600
6 B 5400 800
7 B 6500 1200

示例 1:在对列使用describe() 时删除科学记数法

如果我们使用describe()函数计算sales列的描述性统计,输出值将以科学计数法显示:

 #calculate descriptive statistics for sales column
df[' sales ']. describe ()

count 8.000000e+00
mean 1.116748e+06
std 2.966552e+06
min 2.000000e+03
25% 5.050000e+03
50% 6.250000e+03
75% 1.413825e+05
max 8.450550e+06
Name: sales, dtype: float64

请注意,每个输出值均使用科学计数法显示。

我们可以使用以下语法从输出中删除科学记数法:

 #calculate descriptive statistics for sales column and suppress scientific notation
df[' sales ']. describe (). apply ( lambda x: format (x, ' f '))

count 8.000000
mean 1116747.500000
std 2966551.594104
min 2000.000000
25% 5050.000000
50% 6250.000000
75% 141382.500000
max 8450550.000000
Name: sales, dtype: object

请注意,输出中的值现在显示时不带科学计数法。

示例 2:在对多列使用describe() 时删除科学记数法

如果我们使用describe()函数计算每个数值列的描述性统计量,输出值将以科学计数法显示:

 #calculate descriptive statistics for each numeric column
df. describe ()

               sales returns
count 8.000000e+00 8.000000e+00
mean 1.116748e+06 2.954375e+05
std 2.966552e+06 7.761309e+05
min 2.000000e+03 3.000000e+02
25% 5.050000e+03 6.750000e+02
50% 6.250000e+03 1.000000e+03
75% 1.413825e+05 3.817500e+04
max 8.450550e+06 2.212200e+06

请注意,每个输出值均使用科学计数法显示。

我们可以使用以下语法从输出中删除科学记数法:

 #calculate descriptive statistics for numerical columns and suppress scientific notation
df. describe (). apply ( lambda x: x.apply (' {0:.5f} '. format ))

                sales returns
count 8.00000 8.00000
mean 1116747.50000 295437.50000
std 2966551.59410 776130.93692
min 2000.00000 300.00000
25% 5050.00000 675.00000
50% 6250.00000 1000.00000
75% 141382.50000 38175.00000
max 8450550.00000 2212200.00000

请注意,输出中的值现在显示时不带科学计数法。

请注意,在此示例中,我们使用0:.5f在输出中显示5位小数。

请随意将5替换为不同的数字以显示不同的小数位数。

其他资源

以下教程解释了如何在 pandas 中执行其他常见操作:

Pandas:如何计算每组的累计和
Pandas:如何按组计算唯一值
Pandas:如何按组计算相关性

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注