【发布时间】:2019-05-21 12:39:16
【问题描述】:
我正在尝试使用 numpy.savetxt 使用逗号分隔符将 numpy 数组写入 .csv,但是它缺少第一个条目(第 1 行第 1 列),我不知道为什么。
我对 Python 编程相当陌生,这可能只是我调用 numpy.savetxt 的方式或者我定义数组的方式的问题。无论如何,这是我的代码:
import numpy as np
import csv
# preparing csv file
csvfile = open("np_csv_test.csv", "w")
columns = "ymin, ymax, xmin, xmax\n"
csvfile.write(columns)
measurements = np.array([[0.9, 0.3, 0.2, 0.4],
[0.8, 0.5, 0.2, 0.3],
[0.6, 0.7, 0.1, 0.5]])
np.savetxt("np_csv_test.csv", measurements, delimiter = ",")
我希望在标题 ymin、ymax、xmin 和 xmax 下有 3 行的四列,我做到了,但我缺少 0.9。如,我的 .csv 的第 2 行第 1 列是空的,在记事本中我得到:
ymin, ymax, xmin, xmax
,2.999999999999999889e-01,2.000000000000000111e-01,4.000000000000000222e-01
8.000000000000000444e-01,5.000000000000000000e-01,2.000000000000000111e-01,2.999999999999999889e-01
5.999999999999999778e-01,6.999999999999999556e-01,1.000000000000000056e-01,5.000000000000000000e-01
我做错了什么?
【问题讨论】:
-
尝试使用
header=参数在savetxt调用中写入标头 - 如果您不想这样做,则传递csvfile文件对象而不是文件名。 -
非常感谢!我不知道 header= 参数。现在一切正常,花花公子:)
标签: python python-3.x csv numpy