尝试在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进行绘制?
答案 0 :(得分: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
答案 1 :(得分:-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'