我有一个numpy结构化数组,其中包含string和float。我想将这个结构化数组保存到csv文件中。 我的程序的简化版本是这样的。
structured_array = np.zeros((1,), dtype=[('string','a20'),('float','f8')])
structured_array['string'] = 'string'
structured_array['float'] = 0.0
np.savetxt('foo.csv', structured_array, delimiter=',',fmt='%s,%f')
我希望foo.csv中有string,0.000000
,但它会给我b'string',0.000000
这个引号和b
来自何处?我怎么能摆脱它?
我可以使用readline()
并手动摆脱这个,但有没有聪明的方法来做到这一点。
非常感谢。
答案 0 :(得分:1)
savetxt
中的第1087行(... \ lib \ site-packages \ numpy \ lib \ npio.py)
for row in X:
fh.write(asbytes(format % tuple(row) + newline))
这表明在写入之前将列转换为字节(因此b
前缀。它似乎不会出现这种情况。