将Pandas导出为CSV会导致CSV中出现#NAME错误

时间:2015-09-14 23:18:27

标签: python pandas

我的DF看起来像这样:

    Words
    +Beverly +Hills
    +Andrea +Johnson
    +Football

使用以下方法将此df导出为CSV

  df.to_csv('df.csv', index=False)

但是,因为每个单词都有一个' +'在它之前,excel正在读取这些单元格,导致#NAME错误。我知道我可以强迫一个'在具有excel的字符串之前将其读作纯文本,但这导致了一个领先的'这是我不想要的。

在导出时修复此错误的建议?

1 个答案:

答案 0 :(得分:1)

使用to_excel和xlsxwriter引擎可以将DataFrame写入xlsx文件,没有任何问题。也许那就够好了。但是,使用Excel将xlsx文件转换为cvs格式后,会遇到与您相同的问题。

以下是创建xlsx文件的示例:

import pandas as pd
from pandas import DataFrame
data = {'Words': ['+Beverly +Hills', '+Andrea +Johnson', '+Football']}
df = DataFrame(data)
df
Out[2]: 
              Words
0   +Beverly +Hills
1  +Andrea +Johnson
2         +Football

writer = pd.ExcelWriter('df.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
writer.save()

# contents of df.xlsx are now
#     Words
# 0  +Beverly +Hills
# 1  +Andrea +Johnson
# 2  +Football