我想将 MacBook 桌面文件夹中包含的几个 Excel 文件读取到 pandas 中。
桌面上的文件夹包含一个文件夹(项目数据集),其中包含所有 Excel 文件和我正在其中编写代码(草稿 progetto)的 Jupiter 笔记本页面
我编写了以下代码:
path = os.getcwd()
files = os.listdir(path)
files
输出:
['.DS_Store', 'draft progetto.ipynb', '.ipynb_checkpoints', 'project_dataset']
然后当我运行时:
files_xls = [f for f in files if f[3:] == 'xlsx']
files_xls
我得到一个空列表作为输出!! 这是为什么?
最佳答案
IIUC,
使用 glob
模块通过 pathlib
和 unix
匹配可以更轻松地完成此操作。
from pathlib import Path
import pandas as pd
#one liner
your_path = 'path_to_excel_files'
df = pd.concat([pd.read_excel(f) for f in Path(your_path).rglob('*.xlsx')])
分解它。
# find the excel files
# if you want to change the path do Path('your_path')...
files = [file for file in Path.cwd.rglob('*.xlsx')]
#create a list of dataframes.
dfs_list = [pd.read_excel(file) for file in files])
#concat
df = pd.concat(dfs_list)
关于python - 将文件夹中的多个 Excel 文件读取到 pandas 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60249746/