Numpy 在熊猫中使用科学符号

Numpy 在熊猫中使用科学符号,numpy,pandas,formatting,Numpy,Pandas,Formatting,我找到了很多关于如何在熊猫身上压制科学符号的答案,但我如何才能做到这一点呢?我找到了选项pd.set_option('precision',2),但它不能将大数转换为科学符号 例如,我希望编号123066.14的格式为1.23E+5。我使用的是pandas.DataFrame,在导出/打印时设置整个列的格式将非常有用。好的,我解决了这个问题,您可以使用格式字符串并将其传递给选项'display.float\u format': In [76]: pd.set_option('display.fl

我找到了很多关于如何在熊猫身上压制科学符号的答案,但我如何才能做到这一点呢?我找到了选项
pd.set_option('precision',2)
,但它不能将大数转换为科学符号


例如,我希望编号
123066.14
的格式为
1.23E+5
。我使用的是pandas.DataFrame,在导出/打印时设置整个列的格式将非常有用。

好的,我解决了这个问题,您可以使用格式字符串并将其传递给选项
'display.float\u format'

In [76]:
pd.set_option('display.float_format', '{:.2g}'.format)

In [78]:
pd.Series(data=[0.00000001])

Out[78]:
0   1e-08
dtype: float64
编辑

要匹配所需输出,请执行以下操作:

In [79]:
pd.set_option('display.float_format', '{:.2E}'.format)
pd.Series(data=[0.00000001])

Out[79]:
0   1.00E-08
dtype: float64

顺便说一下,我发现
:.2E
是一种更好的格式。它使用大写字母
E
,同时确保小数点后有2位数字。
g
模式将隐藏第二个
0