【发布时间】:2019-02-11 16:07:38
【问题描述】:
0.000003 在 python 中使用 panda pd.read_excel 读取时,excel 单元格中的值转换为 3e-05。下面是我的程序。我是 python 的新手,正在尝试学习。请提出建议。
import pandas as pd
import numpy as np
import os
import glob
os.chdir('C:\\Users\\Desktop\\Files\\')
files = glob.glob("CT.xls")
for f in files:
print(f)
x = pd.read_excel(f).replace(np.nan, '', regex=True)
cols = x.loc[0]
x.drop(x.index[[0]],inplace=True)
x.columns = cols
#-------------------
pipe_del =[]
for i,j in x.iterrows():
st = ''
for k in j:
st = st + (k).strip() + '|'
st = st[0:len(st)-1]
pipe_del.append(st)
newf = f.split('_')[0].split(' ')[0]+'_'+f.split('_')[0].split(' ')[1]+'_'+f.split('_')[0].split(' ')[2]+'_'+f.split('_')[1].split('.')[0]+'.csv'
with open(newf, "w") as output:
for i in pipe_del:
output.write("%s\n" % i)
【问题讨论】:
-
这里的问题到底是什么...?
-
我在 Excel 列中有一个值为 0.0000003 的值,当我在 python 中读取 excel 时,我希望保留这种十进制格式。但它没有发生,而是小数被表示为 3e-05(指数)。
-
为什么?值是一样的,只是显示方式不同。
-
请在报告您的价值观时更加小心。起初我以为你在问为什么 3e-6 的 0.000003 被解释为 3e-5,但现在你已经使用了 3e-7 的 0.0000003,所以我认为你只是不太关注零的数量。 (顺便说一句,像这样的错误是指数符号通常是个好主意的原因之一..)