我正在尝试从 df B 中减去 df A,其中列映射基于第三个映射数据帧。 在此示例中,应从 x1 中减去 B,并应从 x2 中减去 A。
这可以通过循环和其他一些肮脏的方法来完成,但我想知道是否有更简洁的方法来做到这一点。
数据框a
数据框 b
数据框c
要求的结果
最佳答案
在减去之前使用merge
:
tmp = pd.merge(dfa, dfb, on='date')
dfb[dfc['From']] = tmp[dfc['From']].values - tmp[dfc['To']].values
print(dfb)
# Output:
date x1 x2 x3
0 12/31/2019 0.6 0.7 0.9
1 12/31/2020 -0.2 0.4 1.2
关于python - 如何根据列映射减去两个数据帧?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69652878/