Python:当文件在列标题中有特殊字符时,使用 Pandas 读取 Excel 文件

Posted

技术标签:

【中文标题】Python:当文件在列标题中有特殊字符时,使用 Pandas 读取 Excel 文件【英文标题】:Python: read an Excel file using Pandas when the file has special characters in column headers 【发布时间】:2014-11-17 04:37:01 【问题描述】:

我知道您可以使用 pandas 读取 Excel 文件,但我在读取工作表中的列标题不像纯文本那样易于阅读的格式的文件时遇到了麻烦。

换句话说,如果列标题有特殊字符,则文件将无法导入。就像您将此类数据导入 Microsoft Access 或其他数据库一样,您可以选择导入或删除特殊字符。

对此我唯一的解决方案是编写一个 Excel 宏来去除导入时数据库通常不喜欢的字符 - 然后使用 python 导入文件。

但必须有一种方法可以纯粹使用 python 来处理这种情况(这要快得多)。

我的问题,当列标题包含不会导入的特殊字符时,python 如何处理导入 .xls 和 .xlsx 文件?

【问题讨论】:

请问你能举个例子吗?例如通过示例电子表格和示例代码,我很惊讶这不是“Just Work”TM。这有点感觉像是一个错误报告,所以最好将其发布为 github 问题! 谢谢安迪·海登,我会试着想出一个例子并发布它。 【参考方案1】:

在您的字符串前添加一个“u”。例如,如果您要在数据框“df”中查找名为“lissé”的列,则应输入 df[u'lissé']

【讨论】:

以上是关于Python:当文件在列标题中有特殊字符时,使用 Pandas 读取 Excel 文件的主要内容,如果未能解决你的问题,请参考以下文章

Python Pandas:如何在列中搜索字符串? [复制]

在 python 中,将数据插入 SQL Server 时如何转义特殊字符?

如何转义属性文件键中的特殊字符?

Python Pandas Regex:在列中搜索带有通配符的字符串并返回匹配项[重复]

python re

当密码包含特殊字符时写入连接字符串