将数据框字典合并为 1 个单个数据框

Man*_*ani 8 python dictionary pandas

我正在寻找一种解决方案,将字典中的所有数据帧放入 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
Run Code Online (Sandbox Code Playgroud)

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

我试过这个,

for df in dodf:
pd.concat(dodf.values(), ignore_index=True)
Run Code Online (Sandbox Code Playgroud)

但它似乎不能正常工作。

jez*_*ael 8

我认为需要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()])
Run Code Online (Sandbox Code Playgroud)


00_*_*_00 5

df_list = [ v for k,v in dodf.items()] 
df = pd.concat(df_list ,axis=1)
Run Code Online (Sandbox Code Playgroud)

这行得通吗?它还取决于连接是按列还是按行...