首页 > 解决方案 > 使用 Pandas 从不同 Excel 工作表中的一行中获取某个字符串

问题描述

我有一个带有不同工作表的 excel 文件,每个工作表都包含带有一些数据的城市名称。例如:

Istanbul  Paris Barcelona
1          2        3
4          2        6

在每张纸中,我想提取 Paris = 2 的每个单元格的行。到目前为止,我有:

import pandas
xls= pandas.ExcelFile('cities.xlsx')
sheets= xls.sheet_names
print sheets
#Dialogue Result
for row in sheets.iter_rows():
   row = sheet.row("Paris")
   print row.index()

标签: pythonexcelpandas

解决方案


你可以使用pd.concat

import pandas as pd
xls = pd.ExcelFile('path_to_file.xls')
alldf=pd.concat([xls.parse(x) for x in xls.sheet_names],keys=xls.sheet_names)

alldf.loc[alldf.Paris==2,:]

推荐阅读