dataframe.describe()禁止使用科学计数法

如何抑制dataframe.describe()的科学计数法输出:

contrib_df["AMNT"].describe()

count 1.979680e+05

mean 5.915134e+02

std 1.379618e+04

min -1.750000e+05

25% 4.000000e+01

50% 1.000000e+02

75% 2.500000e+02

max 3.000000e+06

Name: AMNT, dtype: float64

我的数据是float64类型:

contrib_df["AMNT"].dtypes

dtype('float64')

回答:

对于单列:

contrib_df["AMNT"].describe().apply(lambda x: format(x, 'f'))

对于整个DataFrame(如@databyte所建议)

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

对于整个DataFrame(由@Jayen建议):

contrib_df.describe().apply(lambda s: s.apply(lambda x: format(x, 'g')))

当函数描述返回一个数据帧时,以上函数所做的是,它只是将每一行格式化为常规格式。我写这个答案的原因是,我心里有一个想法,那就是在我们的常规格式中,它也更易于比较。

在应用上述功能之前,我们得到了

count    9.500000e+01

mean 5.621943e+05

std 2.716369e+06

min 4.770000e+02

25% 2.118160e+05

50% 2.599960e+05

75% 3.121170e+05

max 2.670423e+07

Name: salary, dtype: float64

申请后,我们得到

count          95.000000

mean 562194.294737

std 2716369.154553

min 477.000000

25% 211816.000000

50% 259996.000000

75% 312117.000000

max 26704229.000000

Name: salary, dtype: object

以上是 dataframe.describe()禁止使用科学计数法 的全部内容, 来源链接: utcz.com/qa/419042.html

回到顶部