如何确保Pandas上的'read_excel'读取正确的工作表?

时间:2018-03-21 13:56:20

标签: python excel pandas

以下代码是从第5行和第14行的Excel中获取数据:

import pandas as pd
import pymssql
df=[]
fp = "G:\\Data\\Hotels\\ABZPD - Daily Strategy Tool.xlsm" 
data = pd.read_excel(fp,sheet_name ="CRM View" )
row_date = data.loc[2, :]
row_sita = "ABZPD"
row_event = data.iloc[11, :]

df = pd.DataFrame({'date': row_date,
                           'sita': row_sita,
                           'event': row_event
                           })
print(df)

然而,它实际上并没有使用我需要它的工作表。它不是使用“CRM View”(就像我告诉它的那样!)而是使用工作表“Previous CRM View”。我认为这是因为两个工作表都有相似的名称。

所以问题是,如何让它使用名为“CRM View”的那个?

1 个答案:

答案 0 :(得分:1)

我能够重现你的问题。它似乎并不是说提供的工作表名称是相似的,它只是读取文件中的第一个工作表,无论你放置sheet_name什么。

无论如何,这似乎是一个错误,所以我检查了我正在运行的pandas版本,0.20.3。更新到0.22.0后,问题就消失了,选择了正确的表格。

修改:0.20.3显然是known bug