3

尝试在 DAT 文件上写入 2 个 NumPy 数组时出现以下错误。

fo.write('{0:f} {1:f} \n'.format(np.array(p_initial),np.array(pv_za)))
ValueError: Unknown format code 'f' for object of type 'str'

完整代码可在此处获得:TypeError: can't multiply sequence by non-int of type 'float': prblem with NumPy arrays

我对 Python 很陌生。如何将 NumPy 浮点数组写入 DAT 文件,以便可以使用 matplotlib 或 gnuplot 绘制它们?

4

2 回答 2

0

最简单的方法numpy.savetxt

import numpy as np
a = np.arange(5)
b = np.arange(5) + 2
np.savetxt('test.txt', np.array([a,b]).T, '%f')

给出:

0.000000 2.000000
1.000000 3.000000
2.000000 4.000000
3.000000 5.000000 
4.000000 6.000000
于 2013-04-04T13:23:52.963 回答
-1

请尝试以下方法:

import itertools as i
import numpy as np
>>> '{0:f} {1:f}'.format(*i.chain(np.array([123]), np.array([234])))
'123.000000 234.000000'
于 2013-04-04T08:41:09.827 回答