提供了数据框:
a = pd.DataFrame({'A':[1, 2]})
b = pd.DataFrame({'B':[2, 3]})
C = pd.DataFrame({'C':[4, 5]})
并列出 d = [A, C, B, B]
如何在帧值上编写数学运算 (((A + C) * B) - B)
以创建新的数据帧?
例如,结果是以下形式的框架:
e = pd.DataFrame({'E':[8, 18]})
最佳答案
IIUC:
In [132]: formula = "E = (((A + C) * B) - B)"
In [133]: pd.concat([a,b,C], axis=1).eval(formula, inplace=False)
Out[133]:
A B C E
0 1 2 4 8
1 2 3 5 18
In [134]: pd.concat([a,b,C], axis=1).eval(formula, inplace=False)[['E']]
Out[134]:
E
0 8
1 18
关于python - Python中对多个Dataframes的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47382607/