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。在這種情況下,它產生的輸出是正確的。 –