python pandas读取列nam中的csv文件错误

2024-09-25 00:32:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个csv文件,前2行的数据如下:

NewDateTime ResourceName    
9/18/12 1:00    ANACACHO_ANA    
9/18/12 2:00    ANACACHO_ANA    

当我用熊猫数据帧读它时:

^{pr2}$

我明白了

df1.columns
Index([u'NewDateTime', u'ResourceName', dtype='object')

但是,当我试着

df1['NewDateTime']

我得到错误:

UnicodeEncodeError: 'ascii' codec can't encode character u'\ufeff' in position 5: ordinal not in range(128)

同样,我的pycharm解释器上的df1['NewDateTime']有一个小破折号,就像df1['-NewDateTime']一样,但是当我把它粘贴到这里时,破折号没有出现


Tags: columns文件csv数据inindexobjectdf1
1条回答
网友
1楼 · 发布于 2024-09-25 00:32:00

CSV文件似乎有一个BOM (Byte Order Mark) signature,所以尝试使用'utf-8-sig''utf-16'或其他编码来解析BOM:

df = pd.read_csv(r'MyFile.csv', encoding='utf-8-sig')

下面是一个小演示:

^{pr2}$

在我的iPython终端中,BOM签名在u'?NewDateTime'中显示为?-在您的例子中,它是一个破折号:df1['-NewDateTime']

相关问题 更多 >