gpt4 book ai didi

python - 如何根据列映射减去两个数据帧?

转载 作者:行者123 更新时间:2023-12-05 02:38:22 24 4
gpt4 key购买 nike

我正在尝试从 df B 中减去 df A,其中列映射基于第三个映射数据帧。在此示例中,应从 x1 中减去 B,并应从 x2 中减去 A。

这可以通过循环和其他一些肮脏的方法来完成,但我想知道是否有更简洁的方法来做到这一点。

数据框a

<表类="s-表"><头><日>日期 AB<正文>2019-12-310.10.42020-12-310.30.6

数据框 b

<表类="s-表"><头><日>日期 x1x2x3<正文>2019-12-311.00.81.02020-12-310.40.71.5

数据框c

<表类="s-表"><头>来自至<正文>x1Bx2一个x3一个

要求的结果

<表类="s-表"><头><日>日期 x1x2x3<正文>2019-12-310.60.70.92020-12-31-0.20.41.2

最佳答案

在减去之前使用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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com