Python 读取顶行和左列为空的Excel文件时出现问题

Python 读取顶行和左列为空的Excel文件时出现问题,python,python-3.x,pandas,Python,Python 3.x,Pandas,我试图读取一个Excel文件,如下所示, 我是这样用熊猫的 xls = pd.ExcelFile(file_path) assets = xls.parse(sheetname="Sheet1", header=1, index_col=1) 但我犯了个错误 ValueError:第3行中应有4个字段,saw 5 我也试过了 assets = xls.parse(sheetname="Sheet1", header=1, index_col=1, parse_cols="B:E") 但我得

我试图读取一个Excel文件,如下所示,

我是这样用熊猫的

xls = pd.ExcelFile(file_path)
assets = xls.parse(sheetname="Sheet1", header=1, index_col=1)
但我犯了个错误

ValueError:第3行中应有4个字段,saw 5

我也试过了

assets = xls.parse(sheetname="Sheet1", header=1, index_col=1, parse_cols="B:E")
但我得到了如下错误的结果

然后尝试

assets = xls.parse(sheetname="Sheet1", header=1, index_col=0, parse_cols="B:E")

终于可以了,但为什么索引为0并解析为B:E呢?这让我感到困惑,因为基于pandas,
assets=xls.parse(sheetname=“Sheet1”,header=1,index\u col=1)
应该可以。我遗漏了什么吗?

读取excel的
有一点不清楚

  • skiprows=1
    跳过文件顶部的第一个空行或
    header=1
    也可以使用第二行has列索引
  • parse_cols='B:E'
    是一种跳过文件左侧第一个空列的方法
  • index\u col=0
    是可选的,允许将第一个解析列(在本例中为B)定义为
    DataFrame
    索引。这里的错误是因为
    index\u col
    与通过
    parse\u cols
    参数选择的列相关
对于您的示例,您可以使用以下代码

pd.read_excel('test.xls', sheetname='Sheet1', skiprows=1, 
              parse_cols='B:E', index_col=0)

#           AA  BB  CC
# 10/13/16   1  12  -1
# 10/14/16   3  12  -2
# 10/15/16   5  12  -3
# 10/16/16   3  12  -4
# 10/17/16   5  23  -5