Python 保存数据帧时出现UnicodeError

Python 保存数据帧时出现UnicodeError,python,pandas,export,export-to-csv,Python,Pandas,Export,Export To Csv,我尝试对多个数据帧使用一个导出函数: def Export_df(df, path): df.to_csv("C:\\Users\\yannick.haussmann\\Desktop\\"+path, sep=";", index=False,encoding = "ISO-8859-1") 当我在另一个函数中调用此函数时,如下所示: Export_df(df,"NEW_TERM.csv") 为什么会出现以下错误 UnicodeEncodeError: 'latin-1' code

我尝试对多个数据帧使用一个导出函数:

def Export_df(df, path):
    df.to_csv("C:\\Users\\yannick.haussmann\\Desktop\\"+path, sep=";", index=False,encoding = "ISO-8859-1")
当我在另一个函数中调用此函数时,如下所示:

Export_df(df,"NEW_TERM.csv")
为什么会出现以下错误

UnicodeEncodeError: 'latin-1' codec can't encode character '\u2013' in position 369: ordinal not in range(256)

为什么要显式设置编码?如果将其保留为默认值“utf-8”,它是否工作?也就是说,如果您完全删除了编码参数。在数据帧中的某个地方,您有一个unicode“EN-DASH”字符“'-'”,而不是基本ascii破折号,并且无法转换为拉丁语-1。如果您真的需要latin-1(当今世界是unicode),那么您需要在数据进入数据帧之前清除数据。所以,问题是,您可以将输出切换到utf-8或utf-16吗?