使用usecols时pandas.read_excel错误

我在从 Excel 文件读取数据时遇到一些问题。Excel 文件包含带有 unicode 字符的列名称。


由于某些自动化原因,我需要将usecols参数传递给 pandas.read_excel 函数。


问题是,当我不使用usecols参数时,数据加载时没有错误。


这是代码:


import pandas as pd


df = pd.read_excel(file)

df.colums


Index([u'col1', u'col2', u'col3', u'col with unicode à', u'col4'], dtype='object')

如果我使用 usecols:


COLUMNS = ['col1', 'col2', 'col with unicode à']

df = pd.read_excel(file, usecols = COLUMNS)

我收到以下错误:


ValueError: Usecols do not match columns, columns expected but not found: ['col with unicode \xc3\xa0']

使用encoding = 'utf-8'作为 read_excel 的参数并不能解决问题,也不能对 COLUMNS 元素进行编码。


茅侃侃
浏览 1152回答 3
3回答

动漫人物

这些方法对于选择 Excel 列非常有效:第一种情况使用数字,列“A”= 0,列“B”= 1 等。df = pd.read_excel("filename.xlsx",usecols= range(0,5))使用字母的第二种情况:df = pd.read_excel("filename.xlsx",usecols= "A, C, E:J")

胡子哥哥

首先阅读像df = pd.read_excel(file, usecols="A:D")其中 A:D 是您要阅读的 excel 列范围,然后像这样重命名您的列df.columns = ['col1', 'col2', 'col3', 'col4']然后相应地访问列

一只斗牛犬

如果您想按特定列名读取 excel 文件,请使用“usecol”按照以下示例代码进行操作:> df = pd.read_excel("filename.xlsx",usecols=["col_name1", "col_name2", "col_name3"]) > print(df)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python