2017-02-17 86 views
0

今天我遇到了一个有趣的事情,使用熊猫to_csv(),我不知道是否是打算的行为。我想我会把它放在这里,看看有没有人有任何想法。奇怪的行为与熊猫和to_csv

我有一个数据集,其中包含一些文本和一些UTF-8编码字符。

import pandas as pd 
df = pd.read_csv('file',encoding='utf-8) 
#Do some work 
with open('file','w') as f: 
    pd.to_csv(f , encoding ='utf-8') 

这将抛出一个让我觉得自己像个白痴 如果我切换到这种模式的ASCII编码错误:

file_out = 'file.csv' 
pd.to_csv(file_out,encoding = 'utf-8') 

工作就好了。

任何想法,如果这是预期的行为?

+0

究竟是什么错误?它总是有助于发布**完整堆栈跟踪** –

+0

ascii编码错误,我现在没有完整的跟踪,但将尝试明天一起获得最低工作示例 – dstorey

回答

0

您错过了结束报价。

import pandas as pd 
df = pd.read_csv('file.csv', encoding='utf-8') 

with open('file.csv', 'w') as f: 
    pd.to_csv(f, encoding='utf-8') 

此外,您不应该在参数和传递的值之间添加空格。另外,将文件结尾添加到您传递的文件中。

+0

让我们假设代码能够编译并运行。我具体询问“with file as f:跟着pd.to_csv(f)”的python模式是不兼容的 – dstorey