我遇到了一个问题,在我的csv写入过程中浮点数被截断。这很难复制,因为它在数千个文件中很少发生,但我需要防范。这是什么样的代码看起来像一个例子:在python中写入浮动到csvs - 截断错误
import csv
import numpy as np
x = np.random.normal(0, .001, 1000).tolist()
draws_header = ['draw%s'%(x) for x in range(1000)]
final_output = np.array(x)
outfile = open('filepath.csv', 'w')
writer = csv.writer('filepath')
writer.writerow(first_row)
writer.writerows(final_output)
outfile.close()
基于输出(其中所有数字都必然低于1),它看起来像一个小数目(即,”最终的字符... e-5“)正在迷路:
draw373 draw374 draw375 draw376
0.000744 0.003008 0.001566 9.727522
有关如何防止这种情况的任何建议?
感谢您的提示 - 我会给它一个旋转。 – mike 2012-03-13 22:29:38
好的答案,但它会更清洁这种方式: >>> np.savetxt(f,np.array([draws_header]),fmt =“%s”,delimiter =“\ t”) >>> np .savetxt(f,[x],delimiter =“\ t”) – Tickon 2014-03-27 17:16:38