使用Python pandas读取多个Excel工作表
excelperfect
标签:Python与Excel,pandas
本文将尝试使用Python pandas读取来自同一文件的多个Excel工作表。我们可以通过两种方式来实现这一点:使用pd.read_excel()方法,并使用可选的参数sheet_name;另一种方法是创建一个pd.ExcelFile对象,然后解析该对象中的数据。
注:本文示例文档可在知识星球完美Excel社群中下载。
pd.read_excel()方法
在下面的示例中:
按索引选择要读取的工作表:sheet_name=[0,1,2]表示前三个工作表。
按名称选择要读取的工作表:sheet_name=['用户信息','复利']。此方法要求提前知道工作表名称。
选择所有工作表:sheet_name=None。
图1
我们将从示例Excel文件中读取所有工作表,然后将该数据框架用于后续示例。
df返回一个数据框架字典。该字典的键(keys)包含工作表名称、该字典的值(values)包含工作表内容。
图2
要从特定工作表中获取数据,只需引用该字典中的键即可。例如,df['购物记录']返回工作表“购物记录”中的数据。
图3
pd.ExcelFile()
使用这种方法,我们创建一个pd.ExcelFile对象来表示Excel文件。此时,我们不需要指定要读取的工作表。注意,前面的read_excel()方法返回数据框架或数据框架字典;而pd.ExcelFile()则返回对Excel文件的引用对象。
图4
要获取工作表名称,我们可以从ExcelFile对象获取所有sheet_names属性,ExcelFile对象返回工作表名称列表(字符串)。
图5
要从工作表中获取数据,可以使用parse()方法,并提供工作表名称。
图6
需要注意的一点是,pd.ExcelFile.parse()方法与pd.read_excel()方法等效,这意味着你可以传入read_excel()中使用的相同参数(参见:Python pandas读取Excel文件)。
明天继续>>>
注:本文学习整理自pythoninoffice.com。
欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。