学习Excel技术,关注微信公众号:
excelperfect
标签:Python与Excel,pandas
本文主要讲解如何使用pandas库将多个Excel文件读入到Python。
方法1:从文件夹获取文件——PowerQuery样式
Excel Power Query具有“从文件夹获取数据”功能,允许我们加载特定文件夹中所有文件。我们可以用Python轻松地完成这项工作。工作流程如下所示:
为了实现上述工作流程,我们需要os库和pandas库。os库提供了与计算机操作系统交互的方法,例如查找文件夹中存在哪些文件。os.listdir()返回特定文件夹中所有文件名(字符串)的列表。一旦有了文件名列表,我们就可以遍历它们并将数据加载到Python中。
图1
我们的工作文件夹包含多种文件类型(Word、Excel、图像和Exe文件,还有文件夹),但是file.endswith('.xlsx')确保我们只将Excel文件读入Python。
os.path.join()提供了一种创建文件路径的有效方法,在可能的情况下,应始终使用该方法,而不是folder+”\”+file。
方法2:使用一个Excel输入文件
第二种方法要求我们有一个单独的Excel文件作为“输入文件”,它包含指向我们打算读入Python的各个文件的链接。要重复我们刚才介绍的示例,需要创建一个Excel文件,如下图2所示,基本上只有一列,其中包含指向其他文件的链接。
图2
可能你会非常喜欢这种方法,因为:
该工作流与前面的方法类似。首先,我们需要让Python知道可以从这个输入文件获得的文件路径。
图3
这基本上是一个只有一列的简单数据框架,其中包含文件链接。现在我们可以遍历列表并读取Excel文件。
图4
何时使用“从文件夹获取文件”与“Excel输入文件”
在确定使用哪种方法时,我会问两个简单的问题。
1.源文件夹是否包含我不需要的额外文件?
2.是否所有文件都位于同一文件夹中?