[英]numpy save 2d array to text file
我用
np.savetxt('file.txt', array, delimiter=',')
將數組保存到以逗號分隔的文件中。 看起來像:
1, 2, 3
4, 5, 6
7, 8, 9
如何將數組保存到以 numpy 格式顯示的文件中。 換句話說,它看起來像:
[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
In [38]: x = np.arange(1,10).reshape(3,3)
In [40]: print(np.array2string(x, separator=', '))
[[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
要將 NumPy 數組x
保存到文件:
np.set_printoptions(threshold=np.inf, linewidth=np.inf) # turn off summarization, line-wrapping
with open(path, 'w') as f:
f.write(np.array2string(x, separator=', '))
您也可以使用第一種格式進行復制粘貼:
>>> from io import BytesIO
>>> bio = BytesIO('''\
... 1, 2, 3
... 4, 5, 6
... 7, 8, 9
... ''') # copy pasted from above
>>> xs = np.loadtxt(bio, delimiter=', ')
>>> xs
array([[ 1., 2., 3.],
[ 4., 5., 6.],
[ 7., 8., 9.]])
import sys
file = "<you_file_dir>file.txt"
sys.stdout = open(file, 'w')
d = [1,2,3,4,5,6,7,8,9]
l__d1 = d[0:3]
l__d2 = d[3:6]
l__d3 = d[6:9]
print str(l__d1) + '\n' + str(l__d2) + '\n' + str(l__d3)
import numpy as np
def writeLine(txt_file_path, txtArray: list):
l = len(txtArray)
counter = 0
with open(txt_file_path, 'a', encoding='utf-8') as f:
for item in txtArray:
counter += 1
row = [str(x) for x in item]
fstr = '\t'.join(row)+'\n' if counter<l else '\t'.join(row)
f.writelines(fstr)
x = np.arange(16).reshape(4,4)
writeLine('a.txt',x)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.