2014-10-28 102 views
0

所以我有這樣的陣列,說這是寫一個數組到一個文本文件

import numpy as np 
m = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]) 

,我想它的尺寸寫入一個文本文件,然後我想寫陣列本身低於。

我已經與

with open(filepath, 'w') as f: 
    n = len(m) 
    f.write(str(n) + ' \n') 
    np.savetxt(f, m) 

完成這個有些問題是該文件中的數字寫爲花車,我想他們,因爲他們給予 - 爲整數!據我可以告訴savetxt()沒有這個設置。

我試過從使用savetxt()切換到使用tofile(),但這甚至不會將數組寫入文件,我認爲是因爲我先寫了其他東西到文件中,這是不知何故的與其運作。

我想我可以通過做一個for循環來寫它,但是這似乎不如僅僅有一個函數在那裏等待我使用它,如果存在的話。

回答

0

我不知道如果這是你在找什麼,但它節省了數組,因爲它是在這種情況下,元素都是浮動:

import numpy as np 
m= np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]) 

filepath = '/Path/to/file/' 
fout = open(filepath + 'fout.dat', 'w') 

# I'd use this if you want the full shape of the array 
dimensions = np.shape(m) 
print >>fout, str(dimensions) + ' \dimensions' 
print >>fout, m 

fout.close() 

希望這有助於..

相關問題