首页 > 解决方案 > 使用 pandas、python 的 dtype=str 的 read_excel 转换错误

问题描述

我正在使用 python 中的 pandas 读取一个 excel 文件,它适用于某些文件,而对于其他一些文件,它会引发以下错误“无法将列说明转换为类型”,其中说明是 excel 的众多列之一。我看不出它适用于那些它不适用的excel之间有任何区别。

当我在没有 dtype=str 的情况下阅读它时,它工作得很好,但我需要将它作为一个字符串来阅读。

df = pandas.read_excel(fileFullPath, dtype=str)

解决此错误的任何帮助都会有所帮助。

标签: pythonpandasdataframe

解决方案


pandas 文档中:

数据或列的数据类型。例如 {'a': np.float64, 'b': np.int32} 使用对象来保存存储在 Excel 中的数据,而不是解释 dtype。如果指定了转换器,则将应用它们代替 dtype 转换。

如果您只想将一个特定的列转换为字符串,请给dtype一个dictionary这样的。

data_dtypes = {
    'description': 'str'
}

df = pandas.read_excel(fileFullPath, dtype=data_dtypes)

推荐阅读