0
我目前正在编写一个python 3函数,它接受一个numpy数组并将整个数组打印到一个文本文件,但它首先在最后一行添加0。例如,如果我给它np.eye(3),Numpy保存文本错误
1 0 0
0 0 1
0 0 1
应该写,
1 0 0
0 0 1
0 0 1 0
到一个文本文件中。虽然下面的代码,
def addTo(array,textFile):
file=open(textFile,'ab')
(numRows,numColumns)=array.shape
main=array[0:numRows-1,:]
endRow=array[numRows-1,:]
newEndRow=np.append(endRow, [0])
np.savetxt(file,main, fmt='%10.5f', newline=os.linesep)
np.savetxt(file,newEndRow[np.newaxis], fmt='%10.5f', newline=os.linesep)
file.close()
addTo(np.eye(3),'test1.txt')
保持返回
1.00000 0.00000 0.00000
0.00000 1.00000 0.00000
0.00000 0.00000 1.00000 0.00000
,因为每一行的文本文件缩进很奇怪。无论如何,要做到这一点numpy?
'np.eye(3)'返回单位矩阵 - 沿对角线(https://en.wikipedia.org/wiki/Identity_matrix)是1。在这种情况下,它产生的输出是正确的。 –