我正在尝试使用以下代码将矩阵导出到.txt文件
with open('outfile.txt','wb') as f:
for line in M:
np.savetxt(f, line, fmt='%.4f')
问题是我获得的文件会在不同的行中分配数字,并且看起来像这样:
0.0000 0.0000 0.0000 0.
0000 0.0000 0.0000 0.0000 -0.2
998 -0.2966 -0.2945 …
我如何告诉python将Matrix M的每一行用作.txt文件的新完整行?
提前谢谢
答案 0 :(得分:0)
如果这是二维矩阵。最简单的方法是确保其为numpy格式,并使用numpy.savetxt()。
链接到下面的文档。 https://docs.scipy.org/doc/numpy/reference/generated/numpy.savetxt.html
答案 1 :(得分:0)
尝试一下:
with open('outfile.txt','wb') as f:
for line in M:
np.savetxt(f, line + '\n', fmt='%.4f')
'\ n'应该将插入符号移至新行
答案 2 :(得分:0)
您可以使用Python的内置文件对象,例如:
M = np.random.randn(10,10)
f = open("outfile.txt","w")
for row in M:
for el in row:
f.write("%.4f" %el + ' ')
f.write('\n')
f.close()
请注意,每次完全打印完一行后,都会打印新行。