2016-02-12 81 views
-1

背景麻煩寫作的CSV二進制的大熊貓

我有一些dataframes,我試圖分裂,然後寫了各列成二進制文件的簽署短褲。

代碼

for i in range(0, len(filesList)): 
    df = pd.read_csv(myPath + '/' + filesList[i], sep='\t', header=None) 
    dfA = df[1] 
    dfA = dfA - np.mean(dfA) 
    dfA = 10000*(dfA/(np.max(dfA)-np.min(dfA))) 
    dfA = dfA.astype(int) 
    dfA.to_csv(path=writeOutDirectoryPath + '/' + filesList[i] + 'LeadA', mode='wb', index=False) 

通過制定一系列DFA成整數(其中完成其轉換成將可讀性簽署短褲,我覺得格式的一切,我的所有值都-6000和6000之間設置這個特殊的變換後的數據。

的問題

我希望dfA.to_csv寫信給在BI文件nary,因此mode ='wb'。我得到一個錯誤:

f = open(path, mode, errors='replace') ValueError: binary mode doesn't take an errors argument

我必須做一些錯誤,但我不知道是什麼。也許to_csv不能寫二進制文件出來,但我不能找到文檔中任何可能表明。除非告訴我,我在做什麼錯,什麼是轉換信息的數據幀到可以做二進制形式的最佳方式?

編輯

寫文件出CSV是微不足道的(我能做到這一點的話)。如果任何人有一個CSV轉換爲二進制文件的方法,我到也完全開放。

+1

CSV是一個純文本(例如ASCII)「逗號分隔值」文件......這樣的二進制是沒有意義的。 – MtRoad

+0

我知道一個CSV是什麼,但有沒有明確的TO_TEXT或to_binary和錯誤消息是神祕的。如果我錯過了文檔中的某些內容,請隨時指出。 – khtad

回答

0

Python 3中是給用於當試圖打開從熊貓內的文件中的內置open()函數的誤差,由於二進制文件模式只支持無作爲誤差參數。它可能只適用於來自熊貓的「w」模式。

Python 3 open() docs沒有解釋它,但它顯示in library code here.

你應該找here使用python的結構封裝寫作類型適當二進制的完整描述。