可能这是一个老问题,我在下面发现了类似的问题,但我仍然可以在输出文件中看到科学记数法。
抑制 pandas 中的科学记数法?
熊猫读科学计数法并改变
Python Pandas 科学记数法不一致
我尝试合并set_option
and df.apply(pd.to_numeric, args=('coerce',))
等我下面的代码不起作用。
df = pd.read_csv(Input)
dfNew = df[['co_A','co_B','co_C']]
# I firstly select columns from df then would like to convert scientific notation to decimal type in my output file.
dfNew.to_csv(Output, index = False, sep = '\t')
我仍然可以在输出文件中看到科学计数法。有人可以帮忙吗?
co_A co_B co_C
167 0.0 59.6
168 0.0 60.6
191 8e-09 72.6
197 -4.7718e-06 12.3
197 0.0 92.4
198 0.0 39.5
您可以使用float_format
调用时的参数.to_csv()功能:
In [207]: df
Out[207]:
co_A co_B co_C
0 167 0.000000e+00 59.6
1 168 0.000000e+00 60.6
2 191 8.000000e-09 72.6
3 197 -4.771800e-06 12.3
4 197 0.000000e+00 92.4
5 198 0.000000e+00 39.5
In [208]: fn = r'D:\temp\.data\out.csv'
In [209]: df.to_csv(fn, index=False, sep='\t', float_format='%.6f')
out.csv:
co_A co_B co_C
167 0.000000 59.600000
168 0.000000 60.600000
191 0.000000 72.600000
197 -0.000005 12.300000
197 0.000000 92.400000
198 0.000000 39.500000
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)