gpt4 book ai didi

python - 如何将 numpy ndarray 保存为 .csv 文件?

转载 作者:太空狗 更新时间:2023-10-29 17:47:03 29 4
gpt4 key购买 nike

我创建了一个 numpy 数组如下:

import numpy as np

names = np.array(['NAME_1', 'NAME_2', 'NAME_3'])
floats = np.array([ 0.1234 , 0.5678 , 0.9123 ])

ab = np.zeros(names.size, dtype=[('var1', 'U6'), ('var2', float)])
ab['var1'] = names
ab['var2'] = floats

ab中的值如下所示:

array([(u'NAME_1',  0.1234), (u'NAME_2',  0.5678), (u'NAME_3',  0.9123)],
dtype=[('var1', '<U6'), ('var2', '<f8')])

当我尝试使用 savetxt() 命令将 ab 保存为 .csv 文件时,

np.savetxt('D:\test.csv',ab,delimiter=',')

我得到以下错误

---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-66-a71fd201aefe> in <module>()
----> 1 np.savetxt('D:\Azim\JF-Mapping-workflow-CRM\Backup\delete.csv',ab,delimiter=',')

c:\python27\lib\site-packages\numpy\lib\npyio.pyc in savetxt(fname, X, fmt, delimiter, newline, header, footer, comments)
1256 raise TypeError("Mismatch between array dtype ('%s') and "
1257 "format specifier ('%s')"
-> 1258 % (str(X.dtype), format))
1259 if len(footer) > 0:
1260 footer = footer.replace('\n', '\n' + comments)

TypeError: Mismatch between array dtype ('[('var1', '<U6'), ('var2', '<f8')]') and format specifier ('%.18e,%.18e')

最佳答案

您的数组包含字符串,但 np 默认格式适用于 float 。

尝试手动设置格式:

np.savetxt(r'g:\test.csv',ab,delimiter=',', fmt=('%s, %f'))

关于python - 如何将 numpy ndarray 保存为 .csv 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48622281/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com