gpt4 book ai didi

python - 乘以 2 列,直到获得所需的值

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

向大家问好,

我有这个表(没有 Res_Problem):

<表类=“s-表”><标题>ID问题X影响问题Res_Problem <正文>ID112IDC112(12-2)=10ID112IDC222(10-4)=6 停止ID112IDC310无循环ID112IDC410无循环ID210IDB112新循环 (10-2)=8ID210IDB112(8-2) = 6 停止

我想做一个循环,将影响和概率相乘,直到得到所需值(例如 6),然后停止循环,直到达到 6。但在 ID2 上再次开始循环...等等,有什么建议吗?

我认为它必须是这样的:

while (df['问题'] - df['影响']*df['影响'] < 6):df['循环'] = res

循环应创建“Res_Problem”列

最佳答案

这里有一个选项:

s = (df['Problem']
.sub(df['Impact'].mul(df['Prob'])
.groupby(df['ID']).cumsum()
)
)

m = s.le(6).groupby(df['ID']).shift(fill_value=False)

df['Res_Problem'] = s.mask(m)

输出:

    ID  Problem     X  Impact  Prob  Res_Problem
0 ID1 12 IDC1 1 2 10.0
1 ID1 12 IDC2 2 2 6.0
2 ID1 12 IDC3 1 0 NaN
3 ID1 12 IDC4 1 0 NaN
4 ID2 10 IDB1 1 2 8.0
5 ID2 10 IDB1 1 2 6.0

关于python - 乘以 2 列,直到获得所需的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74619855/

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