【发布时间】:2015-09-29 07:03:50
【问题描述】:
我有一个包含字符串和浮点数的 numpy 结构化数组。我想将这个结构化数组原样保存到 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.000000 你的脚本是否设置了某种编码?尝试 ('string','S20') 第一个字段
-
@DanPatterson 我可以复制,numpy 1.9.2,更改为“S20”没有效果。
-
@MatthewPlourde 我的版本是 1.7.x 这可能是 Unicode 差异问题吗?
-
这看起来像open issue #4543
标签: arrays csv python-3.x numpy