gpt4 book ai didi

python - 有没有办法将先前计算的行值与 Pandas Dataframe 中不同列的总和一起使用?

转载 作者:行者123 更新时间:2023-12-03 21:05:03 25 4
gpt4 key购买 nike

我有以下数据框:

                     A          B
2021-05-19 07:00:00 Nan Nan
2021-05-19 07:30:00 0.00 Nan
2021-05-19 08:00:00 0.00 Nan
2021-05-19 08:30:00 0.00 Nan
2021-05-19 09:00:00 19.91 Nan
2021-05-19 09:30:00 0.11 Nan
2021-05-19 10:00:00 0.00 Nan
2021-05-19 10:30:00 22.99 Nan
2021-05-19 11:00:00 0.00 Nan
要求:
                     A          B
2021-05-19 07:00:00 Nan 0.00
2021-05-19 07:30:00 0.00 0.00
2021-05-19 08:00:00 0.00 0.00
2021-05-19 08:30:00 0.00 0.00
2021-05-19 09:00:00 19.91 3.32
2021-05-19 09:30:00 0.11 2.78
2021-05-19 10:00:00 0.00 2.32
2021-05-19 10:30:00 22.99 5.76
2021-05-19 11:00:00 0.00 4.80
B列的计算:
B1 = A1
B2 = ((B1*5)+A2)/6
B3 = ((B2*5)+A3)/6
B4 = ((B3*5)+A4)/6
etc.
我已经尝试在 Python 中使用 shift 函数进行计算,但这不起作用,如果有人能在正确的方向上帮助我,那就太好了。

最佳答案

您可以遍历 DataFrame 并设置列 B作为 B 的每个值取决于它自己以前的值(value)。

for i, date in enumerate(df.index):
if i==0:
df.at[date, "B"] = 0
else:
df.at[date, "B"] = (df["B"].iat[i-1]*5+df.at[date, "A"])/6
df
>>
A B
2021-05-19 07:00:00 0.00 0.000000
2021-05-19 07:30:00 0.00 0.000000
2021-05-19 08:00:00 0.00 0.000000
2021-05-19 08:30:00 0.00 0.000000
2021-05-19 09:00:00 19.91 3.318333
2021-05-19 09:30:00 0.11 2.783611
2021-05-19 10:00:00 0.00 2.319676
2021-05-19 10:30:00 22.99 5.764730
2021-05-19 11:00:00 0.00 4.803942

关于python - 有没有办法将先前计算的行值与 Pandas Dataframe 中不同列的总和一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67751801/

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