Python 将熊猫导出到CSV会导致CSV中出现#名称错误

Python 将熊猫导出到CSV会导致CSV中出现#名称错误,python,pandas,Python,Pandas,我有一个DF,看起来像这样: Words +Beverly +Hills +Andrea +Johnson +Football 使用以下方式将此df导出为CSV: df.to_csv('df.csv', index=False) 但是,由于每个单词前面都有一个“+”,excel将这些单元格作为一个等式读取,从而导致#名称错误。我知道我可以强制字符串前面的一个“让excel将其作为纯文本读取”,但这会导致一个“前导”,这是我不希望看到的 导出时修复此错误的建

我有一个DF,看起来像这样:

    Words
    +Beverly +Hills
    +Andrea +Johnson
    +Football
使用以下方式将此df导出为CSV:

  df.to_csv('df.csv', index=False)
但是,由于每个单词前面都有一个“+”,excel将这些单元格作为一个等式读取,从而导致#名称错误。我知道我可以强制字符串前面的一个“让excel将其作为纯文本读取”,但这会导致一个“前导”,这是我不希望看到的


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

使用excel和xlsxwriter引擎可以将数据帧写入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

你可以改为:
df.to_excel('df.xlsx',index=False)
?csv本身并不坏,只是excel对它的读取。您可以在文本编辑器或其他软件包中打开该文件。我相信你也可以将cvs作为文本导入excel,而不是简单地双击文件打开它。嘿@Bernie,我试过了——我一直得到这个错误值错误:目前不支持安装的openpyxl。使用>=1.6.1,是否需要“+”符号?为什么不把它们去掉呢?毕竟,只有在您用来读取输出的软件中,导出时才没有错误。