Skip to main content
 首页 » 编程设计

python之将数据框字典合并为 1 个数据框

2025年05月04日23wayfarer

我正在寻找一种解决方案,将字典中的所有数据帧放入一个巨大的数据帧中。我对 Python 比较陌生,所以我无法理解如何遍历字典并将所有数据帧放入 1。到目前为止,我实现的代码如下:

import sys 
from ftplib import FTP 
import os 
import socket 
import time 
import pandas as pd 
import numpy as np 
from glob import glob 
 
path = 'path_to_file' 
 
files = glob(path + '/*Mail*.xlsx') 
 
print files 
 
get_df = lambda f: pd.read_excel(f, sheetname=None) 
 
dodf = {f: get_df(f) for f in files}  ### dictionary of dataframes 

现在,我需要将所有不同的数据帧放入 1 个数据帧中,然后对其进行操作。任何建议将不胜感激。

我试过了,

for df in dodf: 
pd.concat(dodf.values(), ignore_index=True) 

但是好像不太行。

请您参考如下方法:

我认为需要concat听写理解:

dodf = {f: pd.read_excel(f, sheet_name=None) for f in files} 
df = pd.concat([v for k,v in dodf.items()]) 

或者:

dodf = {f: pd.read_excel(f, sheet_name=None) for f in files} 
df = pd.concat([pd.concat(v) for k,v in dodf.items()])