2016-03-09 81 views
2

我的問題與this有關,但我無法獲得解決方案的工作,也不想將自己的場景添加到舊問題中。numpy.savetxt for Python中的2d數組3.5.1

我有一個2D浮動numpy的陣列,正在運行的Python 3.5.1與numpy的1.10.4,並正嘗試寫出來與

numpy.savetext(filename, arrayname, delimiter = ',') 

與一維數組精美作品的陣列。 我試着從被引用後

with open(filename, 'ab') as f: 
    numpy.savetext(f, arrayname, delimiter = ',') 

無濟於事的解決方案。其實,我已經試過這沒有分隔符,以及與「W」,「WB,‘A’,並與格式化參數,並總是得到同樣的錯誤信息:

TypeError: Mismatch between array dtype ('float64') and format specifier. 

我需要寫這個2D數組讀取到一個文件,稍後將讀入熊貓數據幀(已使用read.csv)。我知道這可能是numpy.savetxt的問題,所以我正在尋找替代方案。

+1

不是命令'numpy.savetxt()'? – roadrunner66

+1

好了,在玩了一段時間之後,現在很明顯我確實有一個3d數組,而不是一個2d數組,我需要將它保存到可以作爲R數據幀讀取的文件(最終重新格式化爲長格式)或作爲一個numpy數組。 – zazizoma

回答

2

請儘量小例子,並張貼結果,因爲下面的工作對我來說:

import numpy as np 

array1=np.array([[1,2],[3,4]]) 
np.savetxt('file1.txt', array1 , delimiter = ',') 

文件內容:

1.000000000000000000e+00,2.000000000000000000e+00 
3.000000000000000000e+00,4.000000000000000000e+00 
1

我有同樣的錯誤信息 - 直到我終於明白了,我的輸出的類型實際上是一個列表,而不是一個numpy數組!