Python 将函数应用于不同数据帧的类似命名列并连接结果

Python 将函数应用于不同数据帧的类似命名列并连接结果,python,pandas,function,Python,Pandas,Function,尝试查看以前的问题,但找不到与我的问题完全匹配的问题: 我有将近300个名为“df1”到“df300”的数据帧。它们都有以下名称和结构: X1 X2 X3 X4 0 3 8 4 9 1 3 5 3 6 2 4 7 7 3 3 10 1 10 6 4 4 4 7 9 5 6 4 1 3 6 10 8 6 3 7 7 1 1 10 8 7 6 9 8

尝试查看以前的问题,但找不到与我的问题完全匹配的问题:

我有将近300个名为“df1”到“df300”的数据帧。它们都有以下名称和结构:

    X1  X2  X3  X4
0   3   8   4   9
1   3   5   3   6
2   4   7   7   3
3   10  1   10  6
4   4   4   7   9
5   6   4   1   3
6   10  8   6   3
7   7   1   1   10
8   7   6   9   8
9   10  3   4   6
对于所有数据帧,我希望应用此函数:

def blend_data(dataframe):
   blend = (dataframe["X1"] + dataframe["X2"]) / (dataframe["X3"] * dataframe["X4"])
   return blend

并且,将结果连接到一个新的数据帧中,其中列“blend1”具有将函数应用于“df1”的输出;“blend2”具有将函数应用于“df2”等的输出。我该怎么做呢?

您可以先连接数据帧
df1、df2、…、df300

df_concat = pd.concat([df1, df2, ... , df300], axis=0)
然后在
df_concat
上应用
blend_data
功能:

df_blend = blend_data(df_concat)

您能将所有300个df加载到内存中吗?
pd.concat([blend_data(d)for d in list_of_your_dataframes],axis=1)
?到底是什么问题?你试过什么,做过什么研究吗?