2016-02-12 82 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的结构封装写作类型适当二进制的完整描述。