2017-09-25 232 views
0

在代碼下面,我想使用「numpy.savetxt」將數組保存到一行文件中,但我真的不確定是否可以得到此結果。將numpy數組保存到一行文件中?

import numpy as np 

if __name__ == '__main__': 
    array = np.array([[ 6, -2.86751284, -0.35808319, 1.79360812], 
     [ 6., -1.59351284, -0.02808319, -0.47039188], 
     [ 6., 0.51848716, 0.21791681, 0.17060812], 
     [ 6., 1.63251284, -0.12208319, 0.90460812], 
     [ 6., -0.26051284, 0.03991681, 1.33660812], 
     [ 6., 1.87948716, 0.43391681, 0.21960812], 
     [ 6., 2.52048716, 0.45191681, 1.44760812], 
     [ 6., 0.40448716, 0.04591681, 2.58360812], 
     [ 6., 1.81248716, 0.30391681, 2.62260812]], np.float32) 

    np.savetxt("img/file.txt", array, fmt="%.3d") 

我希望像「006,-002,-003,001,006,-001 ......」在該文件中的單個行中的所有列和行的結果,而是由逗號分隔。 我可以用「numpy.savetxt」來做到嗎,還是必須通過數組循環來獲得這個結果?

謝謝。

+0

你怎麼在文件中得到,如果你嘗試運行呢? –

+0

你試過了嗎?發生了什麼?請花時間閱讀[問]。 – wwii

+0

當我運行這段代碼時,我得到一個有9行和3列的文件。 –

回答

3

這應該產生,你想要什麼:

np.savetxt("file.txt", array.flatten(), fmt="%.3d", newline = ", ") 

cat file.txt 
006, -002, 000, 001, 006, -001, 000, 000, 006, 000, 000, 000, 006, 001, 
000, 000, 006, 000, 000, 001, 006, 001, 000, 000, 006, 002, 000, 001, 
006, 000, 000, 002, 006, 001, 000, 002, 
相關問題