Python 将numpy数组保存为CSV而不使用科学符号

Python 将numpy数组保存为CSV而不使用科学符号,python,csv,numpy,Python,Csv,Numpy,我能够计算A的平均值、最小值和最大值: import numpy as np A = ['33.33', '33.33', '33.33', '33.37'] NA = np.asarray(A) NA = NA.astype(float) AVG = np.mean(NA, axis=0) MN = np.min(NA, axis=0) MX = np.max(NA, axis=0) print AVG, MN, MX 使用python将这些结果保存到csv文档的最简单

我能够计算A的平均值、最小值和最大值:

 import numpy as np

 A = ['33.33', '33.33', '33.33', '33.37']

 NA = np.asarray(A)
 NA = NA.astype(float)
 AVG = np.mean(NA, axis=0)
 MN = np.min(NA, axis=0)
 MX = np.max(NA, axis=0)

 print AVG, MN, MX
使用python将这些结果保存到csv文档的最简单方法是什么?我没有,所以需要创建一个

如果我使用这个:

 np.savetxt('datasave.csv', (AVG,MN,MX), delimiter=',')

它将在csv中显示为科学符号。我怎么才能不得到它,而是浮动呢?

一个CSV或逗号分隔的值文件就是一个用逗号分隔信息的文件

例如: 这些信息最终会像

名称
年龄
性别
路易斯
45
M
安娜
30
F
布瑞恩
28
M

您可以使用CSV模块

import csv
f = open('New file.csv',"wb")
writer = csv.writer(f)
for row in [AVG, MN, MX]:
    writer.writerow(row)

f.close()
默认写入:

In [154]: np.savetxt('test.txt',(AVG, MN, MX), delimiter=',')
In [155]: cat test.txt
3.333999999999999631e+01
3.332999999999999829e+01
3.336999999999999744e+01
使用自定义的
fmt
写入:

In [156]: np.savetxt('test.txt',(AVG, MN, MX), delimiter=',', fmt='%f')
In [157]: cat test.txt
33.340000
33.330000
33.370000
或者,如果要在一行上显示值,请将其设置为二维数组(或具有额外[]的等效数组),以便每行写入一行:

In [160]: np.savetxt('test.txt',[[AVG, MN, MX]], delimiter=',', fmt='%f')
In [161]: cat test.txt
33.340000,33.330000,33.370000

您还可以尝试使用其他参数。

使用csv模块,尤其是csv.writer。您是否尝试过使用
savetxt
fmr
参数?HTML真的必要吗?问题是如何不获取科学符号这个答案对这个问题没有任何价值。它只显示HTML表格是如何转换成CSV的,但没有人要求它。谢谢你,但出于某种原因,当使用这种方法时,文件被创建了,但里面什么都没有。有什么想法吗?
In [160]: np.savetxt('test.txt',[[AVG, MN, MX]], delimiter=',', fmt='%f')
In [161]: cat test.txt
33.340000,33.330000,33.370000