我正在寻找一种解决方案,将字典中的所有数据帧都放入1个单个巨型数据帧中。我是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)
但这似乎行不通。
我认为需要concatdict理解:
concat
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()])