我有一个满是excel文件的文件夹,我必须从该文件夹中只读取3个文件,然后将它们放入单独的数据框中
File1: Asterix_New file_Jan2020.xlsx
File2: Asterix_Master file_Jan2020.xlsx
File3: Asterix_Mapping file_Jan2020.xlsx
我知道下面的语法可以从文件夹中查找xlsx文件,但不知道如何将其与特定关键字关联。在本例中,以“Asterix_2;”开头
files_xlsx = [f for f in files if f[-4:] == "xlsx"]
此外,我试图将每个excel文件放在一个单独的数据框中,但没有成功:
for i in files_xlsx:
df[i] = pd.read_excel(files_xlsx[0])
如有任何建议,我们将不胜感激
使用glob.glob进行模式匹配
首先使用
glob
(基于@cup的答案)生成要读入的文件列表,然后将它们附加到列表中根据您想要实现的目标,还可以使用
dict
来允许键值对我建议使用pathlib。如果所有文件都在一个文件夹中:
使用glob搜索文件。我还建议使用fnmatch来包含扩展名为大写字母的文件
iterdir允许您遍历文件夹中的文件
name是pathlib中的一个方法,它以字符串格式提供文件名
使用str lower方法可以确保捕获诸如XLSX之类的扩展,它是大写的
或
从那里,您可以运行列表理解来读取文件:
相关问题 更多 >
编程相关推荐